每个返回的Javascript JSON仅返回第一个对象字符串

时间:2019-09-19 10:37:29

标签: javascript arrays json

我正尝试仅从数组中返回第一个对象的字符串(那个)。在我的示例中,当我循环时,它将仅返回第三个选项中的字符串。

我希望它仅返回第二个选项,例如第一个对象命名为那个

我认为它会像这样工作:

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

1 个答案:

答案 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])
});

相关问题