【问题标题】:how to update specific value in json array如何更新json数组中的特定值
【发布时间】:2018-01-12 22:30:46
【问题描述】:

操作 JSON 的新手,感谢您的帮助!这个项目使用 VueJs 2,如果有影响的话。

我正在尝试更新一个键值,在此示例中,它是由 ID 标识的特定申请人的“组”。

我正在尝试完成以下方面的事情:

WHERE applicantID = 3 SET group = 4

这是我正在处理的 JSON 示例:

{
    "applicantID" : 3,
    "fullName": "name",
    "value1": 30,
    "value1": 31,
    "value1": 40,
    "value1": 41,
    "value1": "50",
    "value1": "51",
    "group": 0,
    "flag": true,
},
{
    "applicantID" : 4,
    "fullName": "name",
    "value1": 30,
    "value1": 31,
    "value1": 40,
    "value1": 41,
    "value1": "50",
    "value1": "51",
    "group": 0,
    "flag": false,
}

【问题讨论】:

标签: javascript json vue.js vuejs2


【解决方案1】:

你可以这样做:

var item = array.find(x => x.applicantID == 3);
if (item) {
  item.group = 4;
}

它将更改原始数组中组的值。

【讨论】:

  • 如果有多个 ID 为 3 的商品怎么办?
  • 太棒了!这正是我所需要的。非常感谢!
  • @Sergii 如果您必须更新多条记录,那该怎么办,因为这只会更新数组中的一个对象
【解决方案2】:

如果你必须比较多个字段,你可以使用这个。作为对 Sergii 答案的调整

var item = array.find(x => {
      return x.applicantID == 3 && x.fullName == "name" ;
     });
   if (item) {
     item.group = 4;
    }

【讨论】:

    猜你喜欢
    • 2018-10-03
    • 2020-07-21
    • 2017-04-27
    • 2016-08-28
    • 2017-09-19
    • 1970-01-01
    • 2020-01-02
    • 1970-01-01
    • 2021-03-26
    相关资源
    最近更新 更多