harmonyモード?
node
コマンドに--harmony
というオプションがあります。--harmony
オプションをつけることで、ECMAScript6機能の一部が使えるようになります。
ECMAScript6についてはこの記事ご覧ください:ECMAScript6 - 次期のJavaScriptはこうなる?
harmonyモードでできること
1. for … of ループ
JavaScriptにこのイテレータがないのがずっと謎でした。--harmony
のおかげで使えるようになります。
2.Symbols(シンボル)
JavaScriptではオブジェクトのプロパティーが全て文字列のキーを渡せて呼び出せます。例えば:
プロパティーname
をSymbol
化することで、隠すことができます:
Symbol
はユニークです。Object.getOwnPropertySymbols
で呼び出すことができます。
3.拡張されたStringメソード
String
に便利なメソードがいくつか追加されます:
4.let
とconst
var
以外にlet
とconst
というタイプが追加されます:
let
を使うには、use strict
が必要です。
let
はブロック内定義が一回のみできる変数です:
const
は他の言語と同じく定数です:
5.=>
文法が使えるようになります。
6. Generator
Generatorは膨大なリストなどに便利です。Bufferみたいに使えます。
まとめ
--harmnoy
オプションをつけるとnodeが多少使いやすくなるので、個人的には使うのをおすすめします。harmnoy
でECMAScript6の機能は若干入っていますが、まだサポートされてないものがたくさんあります。ECMAScript6を満喫したければ、nodeの別バージョンio.js
を使うか、babel.js
で既存のコードをJavaScriptにコンパイルするかです。