【问题标题】:ES6 destructuring/cloning a subset of an object [duplicate]ES6解构/克隆对象的子集[重复]
【发布时间】:2016-11-09 16:01:19
【问题描述】:

我仍然习惯于 ES2015/ES6 中的解构,并想知道是否有一种很好的方法可以使用它来克隆对象的某些键。用语言解释有点困难,所以我让代码来说话。这是我目前所拥有的简化版本:

const objectWithLoadsOfData = {
  a: 'a',
  b: 'b',
  c: 'c',
  d: 'd'
};

const objectWithDataSubset = {
  a: objectWithLoadsOfData.a,
  b: objectWithLoadsOfData.b
}

它有效,但似乎可以通过某种方式进行解构来简化它。可能是这样的:

const objectWithDataSubset = objectWithLotsOfData {a, b};

显然这是无效的,但有这样的东西存在吗?

【问题讨论】:

    标签: ecmascript-6 destructuring


    【解决方案1】:

    我不知道有什么功能与您描述的完全一样。

    但是,在 ES6 中,您可以使用 a shorter notation,其中键的名称等于保存值的变量的名称,即 {a: a, b: b} 等效于 {a, b}

    const {a, b} = objectWithLotsOfData;
    const objectWithDataSubset = {a, b}
    

    【讨论】:

    • 我从没想过使用左手分配,这不是一个糟糕的解决方法。一旦你开始使用正确的数据,它就会变得相当大,但这可能是正确的答案。
    猜你喜欢
    • 1970-01-01
    • 2017-06-13
    • 2020-10-19
    • 2012-04-01
    • 2014-07-08
    • 2018-04-12
    • 2014-01-11
    • 1970-01-01
    相关资源
    最近更新 更多