背景
Node.js v7が Nightly build
で使えるようになり、 async/await
も使えるようになっていたのでメモ
※ Nightly build
とは...
http://www.sophia-it.com/content/%E3%83%8A%E3%82%A4%E3%83%88%E3%83%AA%E3%83%BC%E3%83%93%E3%83%AB%E3%83%89
Node.js v7 の nvm インストール
nvm install 7
もしかすると、下記のようなエラーが出るかも。
その場合、nvm use --delete-prefix v7.0.0-nightly20161020d62e7bd1f9
を実行してください。
nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local/Cellar/nvm/0.31.2/versions/node/v7.0.0-nightly20161020d62e7bd1f9"
Run `npm config delete prefix` or `nvm use --delete-prefix v7.0.0-nightly20161020d62e7bd1f9` to unset it.
async/awaitを含んだコードの実行
下記のコードを保存し、
node --harmony-async-await app.js
で実行すると、
-
スタート
と出力 - 約1秒待つ
-
途中
と出力 - 約1秒待つ
-
終わり
と出力
といった挙動を見せてくれます。
※ 今のところ --harmony-async-await
というオプションを付けないと動きません
app.js
const wait = (delay) => {
return new Promise(resolve => setTimeout(resolve, delay));
}
async function tryWaitFunction () {
console.log('スタート')
await wait(1000);
console.log('途中')
await wait(1000);
console.log('終わり')
}
tryWaitFunction();