내 코드 중 일부와 함께 Node 버전 6.2.1 을 사용하는 실험을했습니다 . 대부분의 하이퍼 콜백 지향 코드를 더 깔끔하고 성능이 더 좋은 코드로 마이그레이션 할 계획이었습니다.
이유는 모르겠지만 노드 코드를 실행하려고하면 터미널에서 오류가 발생합니다.
helloz.js
(async function testingAsyncAwait() {
await console.log("Print me!");
})();
로그
BOZZMOB-M-T0HZ:rest bozzmob$ node helloz.js
/Users/bozzmob/Documents/work/nextgennms/rest/helloz.js:1
(function (exports, require, module, __filename, __dirname) { (async function testingAsyncAwait() {
^^^^^^^^
SyntaxError: Unexpected token function
at Object.exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:513:28)
at Object.Module._extensions..js (module.js:550:10)
at Module.load (module.js:458:32)
at tryModuleLoad (module.js:417:12)
at Function.Module._load (module.js:409:3)
at Function.Module.runMain (module.js:575:10)
at startup (node.js:160:18)
at node.js:456:3
BOZZMOB-M-T0HZ:rest bozzmob$ node -v
v6.2.1
내가 무엇을 놓치고 있습니까? 나에게 같은 빛을 좀 던져주세요.
업데이트 1 :
Quentin이 제안한대로 Babel을 사용하려고했지만 여전히 다음과 같은 오류가 발생합니다.
업데이트 된 코드
require("babel-core/register");
require("babel-polyfill");
(async function testingAsyncAwait() {
await console.log("Print me!");
})();
로그
BOZZMOB-M-T0HZ:rest bozzmob$ babel helloz.js > helloz.trans.js
SyntaxError: helloz.js: Unexpected token (3:7)
1 | require("babel-polyfill");
2 |
> 3 | (async function testingAsyncAwait() {
| ^
4 | await console.log("Print me!");
5 | })();