Node.js v7.6.0がリリースされたのでasync/awaitで遊んでみた

  • 9
    いいね
  • 0
    コメント

どうも今から数時間前にNode.jsのv7.6.0がリリースされていたようです。brew updateしたら流れてきたので気付きました。

v7.6.0における変更点はいくつかありますが、一番重要なのはV8のバージョンが5.5に引き上げられたことでしょう。
これは、デフォルトで(--harmonyフラグとか無しで)async/await構文が使えるようになったということを意味しています。

つまりどういうことかというと、↓のツイートを見てみてください。

画像が見難い人向けにテキストでも出しておきます。

$ node
> process.version
'v7.6.0'
> (async () => 1)
[AsyncFunction]
> (async () => console.log(await Promise.resolve(1)))()
Promise { <pending> }
> 1

> .exit

(async () => 1)[AsyncFunction]という得体の知れないものが返ってきていたり、console.log(await Promise.resolve(1))の部分でPromiseが解決されて、1が出力されているのが分かると思います。すごい!

async/await構文というのはPromiseを使いやすくするやつなのですが、詳細については、

あたりを参考にしてみてください。

いやぁ、ついにサーバーサイドの開発でasync/awaitが使える時代が来ましたね。個人的には、koaのv2.0.0がいつリリースされるのか楽しみなところです。
(koaは元々async/awaitがデフォルトで使えるようになったらv2.0.0をリリースすると言っていました。koa v2.0.0はジェネレーターをベースにしたものからPromiseをベースにしたものへと大きく切り替わったものです。koa v2についてはこの辺の記事を参考にしてみてください)

あぁ、楽しみだなぁ。

突発的に書いた短い記事ですが、最後まで目を通していただきありがとうございました。