2015-07-03 39 views
2

JSON包含一个对象:为什么我不能在JavaScript中解析JSON?

results[0] = { 'MAX(id)': 1 } 

而这个代码不工作:

var text = results[0]; 
var obj = JSON.parse(text); 
console.log(obj.MAX(id)); 
+2

你'结果[0]'已经是一个对象,而不是一个JSON字符串,所以没必要对它进行解析。那么你应该使用'obj ['Max(id)']'因为它是一个字符串,而不是一个方法。 – pawel

回答

1

results[0]已经是一个对象类型

只能从字符串解析到对象是这样的:

JSON.parse('{ "MAX(id)": 1 }'); 
1

您的客服t已经是JSON。你不需要解析它。 要访问MAX(id)属性,你可以按如下方式使用[]符号:

results[0] = { 'MAX(id)': 1 }; 
console.log(results[0]['MAX(id)']); 
1

你的结果,[0]是一个真正的JavaScript对象。 JSON.parse将文本转换为对象,因此您无法使用它解析其他对象。

1

var results = { 'MAX(id)': 1 }; 
 
    //var text = results; 
 
    //var obj = JSON.parse(text); 
 
    alert(results['MAX(id)']);

相关问题