首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我们可以向JavaScript中的不可变对象添加属性吗?

我们可以向JavaScript中的不可变对象添加属性吗?
EN

Stack Overflow用户
提问于 2018-09-15 21:12:50
回答 1查看 3.1K关注 0票数 1

对象类似于:

代码语言:javascript
复制
const obj = [{name: 'Alex', age: 20}, {name: 'James', age: 22}];

这个对象在Immutable.js中是不可变的。

是否可以为每个对象添加一个新的键?示例:

代码语言:javascript
复制
const obj = [{name: 'Alex', age: 20, city: 'New York'}, {name: 'James', age: 20, city: 'Rome'}];
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-15 21:19:13

如果它是不可变的,就不会。但是这没问题,你可以把所有的属性复制到一个新的结构中,然后用这种方式添加你需要的任何东西:

代码语言:javascript
复制
const newData = obj.map(person => ({
  ...person,
  city: someLogicToDetermineCity(person)
}))

function someLogicToDetermineCity(person) {
  // logic based on person
  return city
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52345032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档