Node.js 12.22.12与13.0.0中localeCompare结果不一致原因排查
Node.js 12.22.12与13.0.0中localeCompare结果差异原因排查
我发现不同Node.js版本中localeCompare的执行结果存在差异,涉及Node 12.22.12与13.0.0版本,具体现象如下:
$ nvm use 12.22.12 Welcome to Node.js v12.22.12. Type "help" for more information. > "topic".localeCompare("топик", "ru") -1 $ nvm use 13.0.0 Welcome to Node.js v13.0.0. Type "help" for more information. > "topic".localeCompare("топик", "ru") 1
该问题在本地Mac环境及Linux CI中均有出现。
我已做以下排查:
- 查阅Node.js 12和13版本的官方变更日志,未找到相关说明
- 曾怀疑是V8引擎7.6版本的变更所致,但检查Node 12.17.0中的V8版本:
该版本高于7.6,因此可排除此原因。> console.log(process.versions.v8) 7.8.279.23-node.37
请问是什么导致Node 12.22.12与13.0.0执行"topic".localeCompare("топик", "ru")时结果不同?
内容的提问来源于stack exchange,提问作者sqram
相关产品推荐
相关产品推荐

