【发布时间】:2017-11-15 09:17:05
【问题描述】:
我有一个数组,其中包含 javascript / typescript 中的对象。
let array = [{id:1,name:'One'}, {id:2, name:'Two'}, {id:3, name: 'Three'}]
如何更新第二个元素的名称(id 为 2)并使用 javascript spread (...) 运算符将数组复制到新数组?
【问题讨论】:
-
你想改变对象吗?还是克隆它并更改名称?
-
我想关闭一个保持现有对象不变的新数组。
-
为什么不直接阅读the docs?如果你读了它,你会发现你想要的东西是不可能的。扩展运算符不适用于此类数组修改。我建议你改用 Underscore/Lodash 库。
-
我明白了,您有使用 Loadash 的示例吗?我希望使用类似 [...array.filter(a=>a.id != 2), array.filter(a=>a.id == 2).name='updated name'] 的东西。但是,这会重新排列数组中的元素。
标签: javascript typescript redux