我正在尝试使用JS打印数组内部的足球值。我不知道如何在JS中打印它。现在,当我尝试打印为undefined
时。我在下面提供我的JS和JSON的一部分,你能告诉我如何修复它吗?
if (item.data.football == true) {
console.log("print football---->" + item.data[0].football);
}
"data": [{
"sportsProperty": "Insurance",
"football": true
},
{
"sportsProperty": "Insurance",
"football": true
}]
答案 0 :(得分:1)
对象的data
属性是一个数组,因此您需要通过索引访问其成员。试试这个:
if (item.data[0].football) { // note the [0] after 'data'
// do something...
console.log(item.data[0]);
}
以上只会访问数组中的第一项。如果你想使用它们,你需要使用一个循环,如下所示:
for (var i = 0; i < item.data.length; i++) {
if (item.data[i].football) {
// do something...
console.log(item.data[i]);
}
}
答案 1 :(得分:0)
您是否宣布item
?通过编写item.data
,您暗示data
对象位于item
对象中。为了工作,您的代码应如下所示:
var item = {
"data": [
{
"sportsProperty": "Insurance",
"football": true
},
{
"sportsProperty": "Insurance",
"football": true
}
]
};
此外,item.data.football
会返回undefined
,因为您需要在数组中指定一个位置。否则,你可以问:
if (!!item.data)
如果true
不是空对象,则会返回item.data
。
如果您需要任何进一步的帮助,请与我们联系。