循环访问没有数组的 JSON 密钥对象
Looping over JSON key objects that doesn't have array
我有以下JSON:
basket = {
"Items": 3,
"Item": {
"iPhone 6": {
"productId": 227,
"url": "http://example.com/iphone6",
"price": 299.99
},
"Solio Mono Solar Charger": {
"productId": 655,
"url": "http://website.com/solio_charger.html",
"price": 29.95
},
"24 Month Warranty Package": {
"productId": 681,
"url": "http://website.com/24_month_warranty.html",
"price": 129.95
}
},
"Total": 459.89
}
我想遍历 basket['Item']
中的对象,但 JSON 本身并没有提供数组来执行此操作,循环遍历 basket['item']
中的对象的最佳方法是什么?
您可以使用 Object.keys() 获取对象的所有属性名称,然后使用 Array.prototype.forEach() 对其进行迭代:
Object.keys(basket.Item).forEach(function(key) {
console.log(item);
console.log(basket.Item[key]);
});
您可以使用
for...in
。
var obj = {
cat: 'meow',
dog: 'woof'
}
for (attr in obj) {
console.log(attr + ': ' + obj[attr])
}
这将适当地记录:
cat: meow
dog: woof
下面是对象的 JSFiddle。
您也可以使用 Object.keys(),但它仅在 IE>= 9 中受支持。
您可以使用
for in
:
for (var property in basket['Item']) {
var value = basket['Item'][property];
console.log(property + ':');
console.dir(value);
}
相关文章:
- 加载两个具有相同父密钥名称的json文件
- D3动态json密钥名称
- 根据用户选择获取 JSON 密钥
- 从包含密钥路径的字符串中获取json值
- 如何在javascript中获取数组密钥对的json子值
- node.js JSON.parse reviver没有't报告重复的密钥
- 仅使用该值检索 JSON 密钥
- 当我不知道密钥的名称时,如何读取 JSON 对象
- 动态创建 json 密钥
- 循环访问没有数组的 JSON 密钥对象
- 如何在 json 密钥中访问 Json 密钥
- 基于 json 密钥值的特定车把模板
- 使用正则表达式转换 JSON 密钥值
- 如何将 JSON 密钥转换为值
- 带有美元符号的JSON密钥
- 找不到JSON密钥
- 只加密json密钥值,并获得整个json对象的响应与密钥值加密
- TypeScript:使用函数参数作为JSON密钥名称
- 获取 JSON 密钥名称
- JSON 密钥存在,但返回 false