首页 > 解决方案 > 对象扩展过滤器键

问题描述

我有

let a = {foo:45, bar:25}

我只想将属性 foo 设置为 b。

let b = {foo:a.foo}  //this can work

但是正如你所看到的,我不得不重写 foo 两次。

有没有办法告诉 JavaScript:将 a 中的属性 [ propname]设置为b[propname]

类似于传播运算符的东西

b = {...a} //without having to delete bar

标签: javascriptobjectecmascript-6

解决方案


您可以删除不需要的属性。

let a = { foo: 45, bar: 25 },
    { bar, ...b } = a;

console.log(b);


推荐阅读