我正尝试仅从数组中返回第一个对象的字符串(那个)。在我的示例中,当我循环时,它将仅返回第三个选项中的字符串。
我希望它仅返回第二个选项,例如第一个对象命名为那个。
我认为它会像这样工作:
data[i].that[0]
但是它只会返回第一个字母。
var data = [{
"this":"first",
"that":"second",
"that":"third",
},{
"this":"first",
"that":"second",
"that":"third",
}]
data.forEach(function (value, i) {
console.log(data[i].that)
});
当前
:third
third
预期:
second
second
答案 0 :(得分:1)
您的数据建模错误。 JavaScript对象中不能有重复的键。
不过,您可以将其重塑为以下内容,以实现所需的功能(使用data[i].that[0]
进行调用):
var data = [{
"this":"first",
"that": ["second", "third"]
},{
"this":"first",
"that":["second", "third"]
}]
data.forEach(function (value, i) {
console.log(data[i].that[0])
});