node.js - node --harmony不起效果 --harmony_destructuring却可以?
问题描述
我在node上使用一些ES6新特性,比如解构赋值.结果却发现一个神奇的现象node --harmony a.js不起效果而node --harmony_destructuring a.js 才能起效
比如 我写了一个test.js,内容如下:
var [a, b, c] = [1, 2, 3];console.log(a,b,c);
很显然,这就是一个实验解构赋值的例子
然后我在命令行里输入node --harmony test.js报错信息如下:
/Users/chuck7/repository/test/test.js:5var [a, b, c] = [1, 2, 3]; ^SyntaxError: Unexpected token [ at exports.runInThisContext (vm.js:53:16) at Module._compile (module.js:373:25) at Object.Module._extensions..js (module.js:416:10) at Module.load (module.js:343:32) at Function.Module._load (module.js:300:12) at Function.Module.runMain (module.js:441:10) at startup (node.js:139:18) at node.js:968:3
如果用node --harmony_destructuring test.js就可以正确输出
1 2 3
这是神马情况? --harmony不是开启所有harmony选项吗?
注: 以上实验在node v4.4.5 版本上运行
问题解答
回答1:谢谢邀请.其实你的问题可以在官方文档中找到:https://nodejs.org/en/docs/es6/.对于es6的功能分成了3个部分:shipping, staged 和 in progress.shipping功能:这些功能是已经稳定的。已经写入了node.js中的,直接就可以使用staged功能:此功能是几乎完成的功能,但是v8团队没有考虑稳定性,需要使用--harmony.in progress功能: 此功能是需要写出标签的,比如你上面写的--harmony_destructuring.你可以通过下面的命令查看
node --v8-options | grep ’in progress’

相关文章:
1. html5 - javascript写业务有用到什么编程范式没?2. javascript - 一排三个框,各个框的间距是15px,距离外面的白框间距也是15px,这个css怎么写?3. javascript - vue 手机端项目在进入主页后 在进入子页面,直接按返回出现空白情况4. javascript - nodejs调用qiniu的第三方资源抓取,返回401 bad token,为什么5. html5 - vue-cli 装好了 新建项目的好了,找不到项目是怎么回事?6. javascript - immutable配合react提升性能?7. python3.x - python 中的maketrans在utf-8文件中该怎么使用8. javascript - jQuery post()方法,里面的请求串可以转换为GBK编码么?可以的话怎样转换?9. javascript - H5或者JS如何获得当前位置地理定位,只需要获取经纬度即可10. mysql - C#连接数据库时一直这一句出问题int i = cmd.ExecuteNonQuery();

网公网安备