从json数组javascript获取元素

Jav*_*ner 6 javascript arrays json object

我有一个简单的 Json 字符串

[
   {
      "assetName":"LCT",
      "assetValue":"",
      "typeValueInput":"select",
      "valueInputSelect":null,
      "required":true,
      "valueInput":"{\"data\":[{\"name\":\"name1\",\"id\":\"12\"},{\"name\":\"name2\",\"id\":\"13\"},{\"name\":\"name3\",\"id\":\"14\"}]}"
   }
]
Run Code Online (Sandbox Code Playgroud)

我想通过 Javascript 获取 ValueInput 中数据中的字段名称。

请帮我!

Ank*_*wal 5

您需要遍历数组,然后解析字符串化的 JSON,以便您可以访问该data数组。然后简单地循环该data数组以获取每个name属性的值。

var arr = [{
  "assetName": "LCT",
  "assetValue": "",
  "typeValueInput": "select",
  "valueInputSelect": null,
  "required": true,
  "valueInput": "{\"data\":[{\"name\":\"name1\",\"id\":\"12\"},{\"name\":\"name2\",\"id\":\"13\"},{\"name\":\"name3\",\"id\":\"14\"}]}"
}];

arr.forEach((arrObj) => {
  var jsonData = JSON.parse(arrObj.valueInput);
  jsonData.data.forEach(({name}) => console.log(name));
});
Run Code Online (Sandbox Code Playgroud)


R3t*_*tep 0

您可以使用JSON.parse

JSON.parse(o[0].valueInput).data[0].name
Run Code Online (Sandbox Code Playgroud)

JSON.parse(o[0].valueInput).data[0].name
Run Code Online (Sandbox Code Playgroud)