我正在尝试通过搜索任何键值在JSON数组中添加一个额外的键。

JSON示例:-

[
  {
    "$id": "2025",
    "ID": 41,
    "Name": "APPLE"
  },
  {
    "$id": "2026",
    "ID": 45,
    "Name": "MANGO"
  },
  {
    "$id": "2027",
    "ID": 48,
    "Name": "GUAVA"
  }
]


假设我必须在"Price": 50之后或通过找到ID "Name": "MANGO"添加一个新的密钥对示例ID": 45。所以我期望的新JSON将是:-

[
  {
    "$id": "2025",
    "ID": 41,
    "Name": "APPLE"
  },
  {
    "$id": "2026",
    "ID": 45,
    "Name": "MANGO",
    "Price": 50
  },
  {
    "$id": "2027",
    "ID": 48,
    "Name": "GUAVA"
  }
]


它必须添加与匹配的搜索关键字相关的对象。

因此,我无法找到与此问题相关的任何功能。

最佳答案

您可以运行循环并检查条件,然后将属性添加到对象。这是一个正在运行的代码片段。您可以在此处详细了解JavaScript Objects



var myarray = [
                {
                    "$id": "2025",
                    "ID": 41,
                    "Name": "APPLE"
                },
                {
                    "$id": "2026",
                    "ID": 45,
                    "Name": "MANGO"
                },
                {
                    "$id": "2027",
                    "ID": 48,
                    "Name": "GUAVA"
                }
]
for(var i=0;i<myarray.length;i++){
  if(myarray[i].$id === "2025" || myarray[i].Name === "APPLE"){
    var data = myarray[i];
    data.price = 50
  }
}
console.log(myarray)

09-12 08:59