数组解构赋值在 v8 中不起作用,Node.js 中的和谐选项
Array destructuring assignment not working in v8 with harmony option in Node.js
我想学习如何在 Node 中启用 harmony v8 选项,我的节点版本是:
$ node -v
v5.5.0
以 ES6 解构为例进行测试
$ cat destructure.js
'use strict'
var a, b
[a, b] = [1, 2]
console.log(a, b)
直接运行会按预期出错。
$ node destructure.js
/usr/home/mko_io/pure-js-files/destructure.js:3
[a, b] = [1, 2]
^^^^^^
但是在设置标志后得到同样的错误:
$ node --harmony_destructuring destructure.js
/usr/home/mko_io/pure-js-files/destructure.js:3
[a, b] = [1, 2]
^^^^^^
ReferenceError: Invalid left-hand side in assignment
我哪里做错了?
显然,
这是 V8 JavaScript 引擎中的一个错误。
'use strict'
var a, b
[a, b] = [1, 2]
console.log(a, b)
不起作用,但...
'use strict'
var [a, b] = [1, 2]
console.log(a, b)
使用--harmony_destructuring
时确实有效。
看起来实验功能尚未完全符合规范。
V8的相关错误报告在 2015 年 12 月将此问题标记为已修复,因此现在我们只需要等待更新的 V8 进入 Node。 @mscdex通知我此修复程序将在 Node v6.0.0 中提供。
解构被破坏了。
进行中的功能可以通过其各自的和谐标志(例如 --harmony_destructuring)单独激活,尽管除非出于测试目的,否则强烈建议不要这样做。
https://nodejs.org/en/docs/es6/和这个答案 在节点中解构.JS
相关文章:
- 在索引.html和应用.js [node.js] 之间共享变量
- JS(node.js)而循环不起作用
- 如何使用 JS (Node.js) 防止 HTTP 查询中允许使用 UTF8 字符串
- Angular JS & Node Webkit Routing
- 当作为脚本运行时.js Node中“this”的上下文是什么
- JS/Node:- 使用 node.io 选择标记
- JavaScript 如何让节点在返回 node.js/Node-RED 之前等待
- 处理快速连续的函数调用 - Javascript / underscore.js / node.js
- 如何在一台服务器中运行不同的.js文件.js NODE JS中的文件
- JS node-mysql bools 表现得很奇怪
- Node.js+Node Webkit+基于Node串行端口的应用程序-这可能吗
- 如何在Express.js/Node.js中检查查询字符串是否有值
- Express.Js, Node.Js, MongoDB Questions
- 在JS/Node中,当多个人编辑相同的记录时,如何避免数据冲突?有图案吗
- 服务器端js(node.js)上的同步
- 将参数从jade发送到js/node
- angular.js+node.js/electron中的Promise;不起作用
- 是否有可能确定我的应用程序的aws实例使用js/node aws-sdk
- Image Magick模块抛出奇怪的错误(Express js Node js)
- 用JS (Node.js)读取文本文件'