我想在JavaScript中解析JSON字符串。响应类似于
var response = '{"1":10,"2":10}';
如何从这个json中获取每个键和值?
我这样做 -
var obj = $.parseJSON(responseData);
console.log(obj.count);
但我undefined
获得了obj.count
。
答案 0 :(得分:8)
要访问对象的每个键值对,可以使用Object.keys
获取键的数组,您可以使用它们通过[]运算符访问值。请参阅下面的示例代码:
Object.keys(obj).forEach(function(key){
var value = obj[key];
console.log(key + ':' + value);
});
输出:
1:10
2:20
Objects.keys
返回对象中键的数组。在您的情况下,它是['1','2']
。因此,您可以使用.length
来获取密钥数。
Object.keys(obj).length;
答案 1 :(得分:4)
所以你需要像数组一样访问它,因为你的密钥是数字。看到这个小提琴:
您可以这样访问:
result[1] // this returns 10
result.1 // this returns an error
祝你好运