我只将nodejs用于服务器端微服务,我想使用ES6,我读过Babel用于将代码转换为ES5以提供对浏览器的支持。所以我需要知道我是不是在为客户端编写这段代码我是否还需要将其转换为在V8引擎上运行它?或者它只是服务器端不需要的额外层?
答案 0 :(得分:4)
如果您的运行时不支持您正在使用的语言功能,则需要使用转换器。
Node.js的最新版本有almost complete support for ES6。
如果您使用的功能不受您使用的任何版本的Node.js支持,则需要使用转换器。
答案 1 :(得分:2)
如果您的服务器使用新版本的Node.js并且它支持ES6功能,那么您不需要转换代码。如果代码托管在一个地方,您的代码只能在同一个地方使用。
使用Transpiler,当您的代码以较新版本编写时,可能会有用户使用旧版Javascript的浏览器。因此浏览器需要从托管位置获取JS代码并在本地运行,这可能是错误。在这种情况下,您需要使用transpiler。
答案 2 :(得分:1)
如果您只是将代码用作微服务,则无需进行转换。默认情况下,所有最新版本的Node.js都支持es6。您可以在此处参考以获取有关Node
当前支持的es6功能的更多信息答案 3 :(得分:-1)
我建议你直接在最新的nodejs中使用es6 / es7。 现在,最新的nodejs几乎支持除导入/导出之外的大多数功能。
如果是这样,您可以使用箭头功能,异步等待等等。这可以使您的代码更清晰。