配置节点以使用Object.assign

lon*_*lay 4 javascript node.js ecmascript-6

我在IO.js和Node.JS中对Object.assign进行了一个简单的测试,但是它导致了一个错误.

/Users/lp/.nvm/versions/io.js/v2.4.0/bin/iojs --debug-brk=59842 --nolazy mixin.js
Debugger listening on port 59842
/Users/lp/Documents/code/test/mixin.js:11
line = Object.assign(line, depth);
              ^
TypeError: Object.assign is not a function
Run Code Online (Sandbox Code Playgroud)

下面是代码:

var line = {
  x: 0,
  y: 0
};

var depth = {
  z: 0
};

line = Object.assign(line, depth);
Run Code Online (Sandbox Code Playgroud)

我用--harmony和IO.js v2.4.0尝试了Node v0.12.7.从我读到的ES6应该得到支持.分配不支持或我错过了什么?

log*_*yth 7

http://kangax.github.io/compat-table/es6是目前最好看的地方,它表示在iojs和节点上不支持Object.assign.尽管如此,加载polyfill很容易.

ES6规范仅在上个月完成,它甚至还没有完全实现跨平台.如果您想在当前平台上使用较大部分的ES6,您应该计划依靠像Babel和Traceur这样的polyfill和transpilers.