我有一个像这样的JSON数组:
json = [{id:"01.0635.6100",image:"https://www.innotec.nu/InnotecProduktBilder/clearBond.png?ver=0.1",name:"ClearBond",price:"189.00",quantity:"1"},{id:"07.1435",image:"https://www.innotec.nu/InnotecProduktBilder/easygasket.png?ver=0.1",name:"Easy Gasket",price:"200.00",quantity:"2"}]
我无法直接读取数据而无需像每个人一样循环,地图等。 我知道应该可以使用以下内容访问数组中的特定变量:
var pid = '07.1435'
json.id[pid].price
json[pid].price
json[id][pid].price
我已经尝试过"每一个"可能的解决方案,但我最终得到的是" Uncaught TypeError:无法读取属性' 07.1435'未定义"
如果这是一个重复的问题,我很抱歉,但确实如此。如果你能指出我正确的方向,我将非常感激
答案 0 :(得分:1)
您可以使用Array#find
方法查找具有正确ID的对象:
const json = [{id:"01.0635.6100",image:"https://www.innotec.nu/InnotecProduktBilder/clearBond.png?ver=0.1",name:"ClearBond",price:"189.00",quantity:"1"},{id:"07.1435",image:"https://www.innotec.nu/InnotecProduktBilder/easygasket.png?ver=0.1",name:"Easy Gasket",price:"200.00",quantity:"2"}];
console.log(json.find(e => e.id == '07.1435'));
答案 1 :(得分:0)
这里有一个对象数组。获取对象的一种方法是循环遍历数组:
$.each(json, function(index){
console.log(this.id)
console.log(this.image)
});
你也可以使用$ map()或简单的for循环来做到这一点。