在NodeJS中启用ECMAScript 6

http://ourjs.com/detail/535db36b4e127cd93a000004

在NodeJS中启用ES6 (harmony) ,版本:


开始吧,

Linux下启用

来源:  http://h3manth.com/new/blog/2013/es6-on-nodejs/

Node version : v0.11.6

先来看一看版本 harm ;) :

$ node --v8-options | grep harm
  --harmony_typeof (enable harmony semantics for typeof)
  --harmony_scoping (enable harmony block scoping)
  --harmony_modules (enable harmony modules (implies block scoping))
  --harmony_symbols (enable harmony symbols (a.k.a. private names))
  --harmony_proxies (enable harmony proxies)
  --harmony_collections (enable harmony collections (sets, maps, and weak maps))
  --harmony_observation (enable harmony object observation (implies harmony collections)
  --harmony_typed_arrays (enable harmony typed arrays)
  --harmony_array_buffer (enable harmony array buffer)
  --harmony_generators (enable harmony generators)
  --harmony_iteration (enable harmony iteration (for-of))
  --harmony_numeric_literals (enable harmony numeric literals (0o77, 0b11))
  --harmony_strings (enable harmony string)
  --harmony_arrays (enable harmony arrays)
  --harmony (enable all harmony features (except typeof))


不错,我们可以通过awk来启用所有的ES6新特性,需要跟 strict一起使用

$ node --use-strict $(node --v8-options | grep harm | awk '{print $1}' | xargs) #ES6


Windows下启用(通用方法)

来源: http://stackoverflow.com/questions/13351965/what-does-node-harmony-do

node --harmony app.js


看一个例子

作用域

关键字  let 可以让我们将变量的作用范围限定在一个代码块中


'use strict';
if (1) {
    let b = 2;
    console.log(b);	   //2
}
console.log(typeof b); //undefined

你可能感兴趣的:(Node.js)