【问题标题】:Is there a way I can restructure part of a destructuring assignment?有没有办法可以重组解构分配的一部分?
【发布时间】:2015-06-28 17:10:29
【问题描述】:

假设我有一个数组数组,如下所示:

var arrs = [
    [1, "foo", "bar", "baz"],
    [2, "bar", "baz", "qux"],
    [3, "baz", "qux", "thud"]
];

我想使用 ES6 的解构赋值来获取每个数组的第一个元素作为单独的变量,并将其余元素重新打包为另一个数组。在伪代码中:

for (let [first, *rest] of arrs) { // What is the proper way to do *rest?
    console.log(first); // Should be a number
    console.log(rest); // Should be an array of strings
}

这样的事情可能吗?

【问题讨论】:

  • groupBy(x => `${x.type}-{x.status}`

标签: javascript ecmascript-6 destructuring


【解决方案1】:

... 就是这样做的:

for (let [first, ... rest] of arrs) {

【讨论】:

  • 啊,不知道这个语法。这也适用于索引解构分配吗? { id, ...rest } of { id: 1, some: "foo", other: "bar", properties: "baz" } 之类的东西?
  • 请注意对象示例中的//ES7 注释。如果你使用 Babel,它会工作,但它不在 ES6 中。
  • @loganfsmyth 哦,是的,你是对的;我只是注意到,当我返回关闭该浏览器选项卡时:)我承认我之前没有看到过这样的内容,尽管我记得有人在某个时候提到过。
  • 此外(根据该 MDN 页面上的图表),目前(2015 年夏季)除 Firefox 之外的任何环境都不支持此功能。
猜你喜欢
  • 2011-02-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多