怎么才能让a的部分数据发生变化,而不是重新把整个新的JSON数据赋值给a?

我的JSON数据现在是这样的,然后赋值给变量a

[
    {
        "省会": "北京123",
        "金额": 29097061.66
    },
    {
        "省会": "广州123",
        "金额": 19784491.69
    },
    {
        "省会": "杭州123",
        "金额": 14068375.59
    },
    {
        "省会": "南1京1",
        "金额": 13391405.93
    },
    {
        "省会": "香22港3",
        "金额": 11244012.29
    },
    {
        "省会": "香22港3",
        "金额": 11244012.29
    },
    {
        "省会": "香22港3",
        "金额": 11244012.29
    }
]

如果我其中的数据改成

    {
        "省会": "杭州123",
        "金额": 55
    }

怎么才能让a的部分数据发生变化,而不是重新把整个新的JSON数据赋值给a

阅读 2.6k
3 个回答
a.filter(item => item['省会'] === '杭州123')[0]['金额'] = 55;
let arr = a.filter(ele => ele['省会'] == '香22港3');
for(let val of arr){
    val['金额'] = '123.45';
}
a.map(ele => {
    if (ele['省会'] !== '北京123') return;
    ele['金额'] = 123.45;
})
var a1 = ['a', 10, 'b', 20, 'c', 30];
var a2 = a1.filter(function(item) {
    return typeof item == 'number';
});
console.log(a2);

let a = [
    {
        "省会": "北京123",
        "金额": 29097061.66
    },
    {
        "省会": "广州123",
        "金额": 19784491.69
    },
    {
        "省会": "杭州123",
        "金额": 14068375.59
    },
    {
        "省会": "南1京1",
        "金额": 13391405.93
    },
    {
        "省会": "香22港3",
        "金额": 11244012.29
    },
    {
        "省会": "香22港3",
        "金额": 11244012.29
    },
    {
        "省会": "香22港3",
        "金额": 11244012.29
    }
]

var c = a.filter(function (item) {
    return item['省会'] === '杭州123';
});

console.log(c);
console.log(c[0]);

let ar = new Array();
ar = ['d','v','q']
console.log(ar[1]);

a.filter(item => item['省会'] === '杭州123')[0]['金额'] = 55;

console.log(a)
a.filter(item => item['省会'] === '杭州123')[0]['金额'] = 55;
a.filter(function (item) {
  return item['省会'] === '杭州123';
})[0]['金额'] = 55;
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题