在节点6.7.0发布之后,我们还需要babel来编译es6代码吗?

时间:2016-10-05 16:29:05

标签: javascript node.js ecmascript-6 babeljs

在最新的节点版本中,该引擎支持98%的ES标准,我的问题是我们可以运行代码而无需使用babel编译代码到ES5

2 个答案:

答案 0 :(得分:2)

JavaScript标准不断发展,每年都会添加新功能。 Node.js现在支持97%的ES2015(以前称为ES6)规范,所以如果这些功能是您要使用的功能,那么您应该没问题。

但ES2016规范已经完成,ES2017规范已经在进行中,因此如果您想使用Node尚不支持的 future JavaScript功能,您将不得不使用Babel(或其他一些运输工具。)

另一件需要考虑的事情是,如果您想使用ES2015 +功能,但想要支持较早的版本的Node,例如,如果您正在编写库,那么您还需要使用像巴贝尔这样的传播者。

总结:

  • 如果您想使用Node.js尚未支持的JavaScript功能(ES2016 +),请使用Babel。
  • 如果您想在仍使用现代JavaScript功能(ES2015 +)的同时支持旧版本的Node.js,请使用Babel。
  • 否则,您不需要使用Babel。

答案 1 :(得分:-1)

是的,你可以,只要你记得剩余的2%。 Babel在浏览器中更有用。对于Node应用程序 - 不是那么多。