【问题标题】:how to yield multiple constants with one declaration如何通过一个声明产生多个常量
【发布时间】:2016-05-23 00:31:29
【问题描述】:

我有一个函数makeThings(n),它返回一个 Promise 来创建 n 个项目(通过 Sequelize)。

有人建议我使用这种格式来检索值:

const [thing1, thing2] = yield makeThings(2);

我在互联网上找不到任何关于以这种方式分配常量/变量的信息。你见过这个吗?它是如何工作的?我的机器不喜欢它并吐出一个意外的令牌“[”错误。

也许它可能是一个我不知道的 npm 包?

使用 Node.js 5.1.0、ES6

【问题讨论】:

  • 您需要将--harmony_destructuring 传递给nodejs 以启用解构。

标签: javascript node.js sequelize.js es6-promise


【解决方案1】:

这是 ES6 中的东西。这叫做“解构赋值”

ECMAScript 6

var list = [ 1, 2, 3 ]
var [ a, , b ] = list
[ b, a ] = [ a, b ]

ECMAScript 5

var list = [ 1, 2, 3 ];
var a = list[0], b = list[2];
var tmp = a; a = b; b = tmp;

来自http://es6-features.org/#ArrayMatching。 这是一个介绍 es6 中一些新功能的好网站。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    • 1970-01-01
    • 2012-09-29
    • 1970-01-01
    • 2012-10-19
    相关资源
    最近更新 更多