gpt4 book ai didi

javascript - 无法在 json 对象内部找到

转载 作者:行者123 更新时间:2023-12-02 16:09:52 24 4
gpt4 key购买 nike

我有一个代码来迭代代码,并希望通过比较类别来获得产品项目,例如:如果类别是“汽车”,那么该数组内的产品应该使用索引而不是名称进行迭代

html

<ul class="menulist"></ul>
<div class="content"></div>

js

var jsonData;
$(document).ready(function () {
$.ajax({
url: "product.json",
dataType: "json",
error: function () {

},
success: getData

});

function getData(data) {
alert(data)
for (i = 0; i < data.length; i++) {


var menulistdata = data[i].category,
menulist = '<li class="" data-att="' + menulistdata + '">' + menulistdata + '</li>'
$(".menulist").append(menulist);
}


$('.menulist li').on('click', function () {

var list = $(this).text();

for (i = 0; i < data.length; i++) {
alert(i)

var productData = data[i].products;
if (data[i].category == list) {
$(".content").append(productData.BMG[i].image + productData.BMG[i].date + productData.BMG[i].size);
}



}
})
}

});

json

[
{
"category":"car",
"products": {
"BMG" : [{
"image" : "images/cars/BMW.jpg",
"date": "5-May-2015",
"type": "JPGE image",
"size": "1132 KB"
}],

"verna":[{
"image" : "images/cars/Verna.jpg",
"date": "5-May-2015",
"type": "JPGE image",
"size": "1132 KB"
}]
}
},

{
"category":"Nature",
"products": {
"Nature Mood At Night" : [{
"image" : "images/nature/Night.jpg",
"date": "5-May-2015",
"type": "JPGE image",
"size": "1132 KB"
}],

"Snowfall on Hut":[{
"image" : "images/nature/Hut.jpg",
"date": "5-May-2015",
"type": "JPGE image",
"size": "1132 KB"
}]
}
}
]

Working Fiddle

最佳答案

data[0].products 是对象类型 - 您不能通过索引迭代对象,只能通过命名键迭代。使用for..in 语句迭代对象。

for( var key in data[0].products ) {
console.log( data[0].products[key] );
}

参见:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...in

关于javascript - 无法在 json 对象内部找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30326016/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com