加载--harmony_destructuring
的节点5.9允许ES6启用的大部分酷解构乐趣。但是,this blog post似乎表明我应该能够以下列方式进行变量交换:
var [a,b] = [0,1];
[b,a] = [a,b]; //swaps the values of a and b
然而,这在Node中失败并出现invalid left-hand assignment
错误。相反,我必须再次重新定义变量:
var [a,b] = [0,1];
var [b,a] = [a,b];
博客文章有缺陷吗?这只是Node中ES6的实现细节吗?
答案 0 :(得分:1)
博客文章撰稿人。
Babel compiles your code根据文章的描述,进入以下内容。
"use strict";
var a = 0;
var b = 1;
//swaps the values of a and b
var _ref = [a, b];
b = _ref[0];
a = _ref[1];
_ref;
您可以使用babel-node
在行为不正常或缺少一个或两个ES6功能的Node版本中获得此行为。