我将node.js从v7.7.4降级到v0.10.48,因为我在CentOS 6.5服务器上,显然v0.10.48是它可以处理的最新版本。像这样倒退有问题吗?
答案 0 :(得分:2)
没有任何问题可以解决它在当前版本时的效果。
npm上的模块兼容性会出现问题。许多模块可能无法正常工作。这部分是因为Node v0.10使用的是V8 v3.14(为了比较,当前的Node版本使用的是V8 v5.x),因此许多现代JavaScript语法都不能在那里工作。
有关哪种语法有效以及无法看到的详细信息:
例如,您将无法使用简单的箭头功能:
const add1 = x => x + 1;
甚至是const
关键字。你会错过很多我们现在认为理所当然的语法,即使在前端也是如此。请记住,io.js是从Node v0.12派生出来的,主要是因为它使用了这样一个过时的V8版本 - 而且几年前它就是一个比你想要使用的版本更新,更现代的版本。
在此期间更改的核心模块也发生了很大变化 - 比较:
由于Node的当前版本支持更新的语言语法并且具有改进的核心API,因此npm上的许多模块将无法正常工作或根本无法工作。确保您使用的任何模块仍支持Node v0.10或使用支持它的旧版本。您可能需要使用shrinkwrap降级许多子依赖项,因为即使您使用过去在Node v0.10上工作的旧版本模块,它仍然可能会加载其依赖项的最新版本。再工作了。
此外,还有潜在的错误和漏洞问题无法修复。 v0.10版本的manitenance于2016-10-31结束,此版本的状态目前为:生命终止。今天仍然保留的最旧版本(截至2017年5月)是4.x。
请参阅: