localeCompare 在不同的 Node.js 版本中产生不同的结果,我正在尝试找出发生这种情况的确切原因。
具体来说,节点 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
在 12 和 13 的 Nodejs changelogs 中没有找到任何内容
我唯一能找到的可能是 7.6 版本上 v8 引擎的变化,但是,当我在节点 12.17.0 控制台中检查 v8 版本时,我得到:
> console.log(process.versions.v8)
7.8.279.23-node.37
高于7.6,所以不可能是v8的改变。
那么,是什么导致 Node 12.22.12 和 Node 13.0.0 在运行时产生不同的结果
"topic".localeCompare("топик", "ru")
?
注意:在 Mac 上本地运行这些,但在我们的 Linux CI 中看到相同的结果