我可以在节点js文件中指定es6

Sha*_*mal 7 shebang node.js ecmascript-harmony ecmascript-6

为了使用es6,我们在命令行中传递和声标志

node --harmony myscript.js
Run Code Online (Sandbox Code Playgroud)

有没有办法从文件内部执行此操作,例如use harmony

#! /usr/bin/node
use harmony

class MyScript {
    constructor (options) {
        this.options = options;
    }
    get options () {
        return this.options
    }
}
Run Code Online (Sandbox Code Playgroud)

Pau*_*aul 4

如果您的目的是这样做,以便您可以直接运行脚本,就像./myscript.js您可以使用以下内容:

#!/bin/sh
':' //; exec node --harmony "$0" "$@";

class MyScript {
    constructor (options) {
        this.options = options;
    }
    get options () {
        return this.options
    }
}
Run Code Online (Sandbox Code Playgroud)

我从博客Obscure Javascript中得到了多语言技巧。

如果您的目的是能够启动另一个脚本而无法--harmony启动require此脚本,那么此技巧将不起作用。