我如何在 windows 10 cmd window 没有 babel 的情况下 运行 ES6 semicolumnless 代码?

How can I run ES6 semicolumnless code in a windows 10 cmd window without babel?

如何运行一个没有分号的简短 ES6 (Javascript) 程序?

我在 jstry.js 文件中有以下代码

let v = 1
console.log(v)

我在 windows 10 中打开一个 CMD window,运行 它并得到一个错误,指出需要分号。我可以更改什么(没有 babel)以便此代码 运行 OK?

备注:我知道这应该在 ES6 中得到支持,实际上它以前甚至被支持但是......现在有一些我不太明白的解释:直到 ES6 出现然后一些东西(我也不明白)发生了。

我的路径是:

PATH=C:\ProgramData\Oracle\Java\javapath;
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;
C:\WINDOWS\System32\WindowsPowerShell\v1.0\;
C:\Program Files C:\Users\user\AppData\Local\Android\Sdk\tools;
C:\Program Files\nodejs\;
C:\Program Files\Java\jdk1.8.0_172\bin;
C:\Program Files\Microsoft VSCode\bin;   
C:\Users\user\AppData\Roaming\npm;
C:\Users\user\AppData\Local\Programs\Microsoft VSCode\bin;

所以也许 运行ning 在 cmd window 中调用了 nodeJS?我是 运行宁 8.11.1

您的代码在 ES6 中完全有效(注意:没有所谓的 ECMA6,它是 ECMAScript 6 或缩写为 ES6)。

一个问题可能是,如果您 运行 此脚本仅通过输入其文件名(而不是 nodefilename),那么它是Windows Script Hostcscript.exewscript.exe)的运行,这是运行宁.js文件在[=36=上的默认方式];但是,它不支持 ES6。

解决这个问题,你有多种方法:

  • 总是 运行 脚本,方法是在其文件名前加上程序名称,在本例中为 node,或
  • 将与文件扩展名 .js 关联的默认程序更改为 Node.js(here 的操作方法)