javascript - 从 JavaScript 中的对象复制某些属性的最有效方法是什么?

标签 javascript ecmascript-6

比如说,我有一个对象:

const user = {_id: 1234, firstName: 'John', lastName: 'Smith'}

我想创建另一个没有 _id 键的对象:

const newUser = {firstName: 'John', lastName: 'Smith'}

我正在使用这个:

const newUser = Object.assign({}, {firstName: user.firstName, lastName: user.lastName})

有更好的方法吗?

最佳答案

您可以通过解构的形式实现它:

const user = { _id: 1234, firstName: 'John', lastName: 'Smith' };
const { _id, ...newUser } = user;
console.debug(newUser); 

但是,在撰写此答案时,传播 (...) 语法仍在 ECMAScript proposal 处阶段(第 3 阶段),因此在实践中可能无法普遍使用。您可以将它与“转译”层(例如 Babel)一起使用。

关于javascript - 从 JavaScript 中的对象复制某些属性的最有效方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40562647/

相关文章:

javascript - 从 vuejs2 中的子组件更改父 Prop

javascript - 问题重新计算 parent 高度

Javascript ES6 生成器异步

javascript - 如何在 REACT 中为导入的组件设置默认值

javascript - 巴别塔 : The CLI has been moved into the package `babel-cli`

javascript - jquery mobile 阻止执行或退出

javascript - 如何禁用或删除浏览器中的粘贴上下文菜单项

javascript - 组件的高阶函数过滤方法

javascript - 当函数在构造函数中绑定(bind)时如何在 ES6 React 中向事件处理程序添加参数

javascript - Angular 7 生产版本不加载样式和 js