js json[0].value无法取到值

var str_json=[['a','a'],['b','b'],['c','c']];
var json=eval('(' + str_json + ')');
这么写json[0].value为什么取不到值

第1个回答  推荐于2016-03-10
[['a','a'],['b','b'],['c','c']];这个东西不是json格式

应该是{"a":"aa","b":"bb","c":"cc"},
取法.key获取键;[i].value 获得值追问

这是什么格式啊?

追答

  可以叫做二维数组
  var str_json=[['a','a'],['b','b'],['c','c']];

  for(var i=0;i<str_json.size;i++){
  var str=str_json[i];
  for(var j=0;j<str.size;j++){
  alert(str[j]);
  }
  }
这样就取到了

本回答被提问者采纳
第2个回答  2014-06-17
var str_json=[['a','a'],['b','b'],['c','c']];你的这个不是一个json格式的字符串或者说对象。你的这个是一个二维的数组,要取得里面的值不用eval,直接str_json[0][0]追问

我eval后,json[0]输出为a,a,json[1]输出为b,b但他们不能比较什么怎么回事?
就算它们输出一样,if还是返回的false

追答

你说的什么意思?var str_json=[['a','a'],['b','b'],['c','c']];你的这个东西str_json[0]获取的就是外面的这个数组里面的第一个数组['a','a']

相似回答