Javascript 如何获得正确的JSON数据计数而不是字符长度

Javascript 如何获得正确的JSON数据计数而不是字符长度,javascript,json,Javascript,Json,我认为我的代码返回一个JSON数组。返回的JSON数组存储在javascript变量result中。如果我 console.log(result); 在FF中,我得到输出 [{"id":"G24","value":"Zas, S"},{"id":"G75","value":"Wara, TS"},{"id":"G48","value":"Jala, S"}] 在jsonLint上验证为正确的json 在我的代码中,如果我这样计算数组中的元素数: var key, count = 0; fo

我认为我的代码返回一个JSON数组。返回的JSON数组存储在javascript变量result中。如果我

console.log(result); 
在FF中,我得到输出

[{"id":"G24","value":"Zas, S"},{"id":"G75","value":"Wara, TS"},{"id":"G48","value":"Jala, S"}]
在jsonLint上验证为正确的json

在我的代码中,如果我这样计算数组中的元素数:

var key, count = 0;
for(key in result) 
{
  count++;
}
console.log("result count is:" + count); 
输出是94,这是数组中字符的长度/计数-[上面显示的示例输出已修改]

但是,在FF中的JSON选项卡中,它将结果显示为一个对象数组:

0   Object { id="G24", value="Zas, S"}
1   Object { id="G75", value="Wara, TS"}
2   Object { id="G48", value="Jala, S"}
我使用了“stackoverflow”中的替代代码段


这也产生了同样的结果。我怎样才能正确地迭代这个数组、对象数组、字符串或其他任何东西?请给我数一数?。谢谢。

听起来好像有HTTP响应返回JSON文档

在JSON选项卡中,它显示为JSON

如果是你的代码,你只需要获取响应的文本并对其进行操作

您需要解析JSON来创建JavaScript对象


将字符串传递给旧浏览器并用于polyfill。

听起来您有一个返回JSON文档的HTTP响应

在JSON选项卡中,它显示为JSON

如果是你的代码,你只需要获取响应的文本并对其进行操作

您需要解析JSON来创建JavaScript对象


传递字符串并用于旧浏览器的polyfill。

您必须解析JSON以创建JavaScript数组

result = JSON.parse(result); // Now it's an array
console.log(result.length) // prints now what you want

必须解析JSON才能创建JavaScript数组

result = JSON.parse(result); // Now it's an array
console.log(result.length) // prints now what you want

解析JSON后,可以使用
data.length
获取数组的长度。请参见解析JSON后,可以使用
data.length
获取数组的长度。看见