gpt4 book ai didi

javascript - 对于 JS 字符串,a.localeCompare(b) === 0 是否总是与 a === b 相同?

转载 作者:行者123 更新时间:2023-11-29 14:54:18 26 4
gpt4 key购买 nike

给定两个字符串,localeCompare 是否总是与三等号相同以进行相等比较?

汉字和星体字好像还行

function compareEm(a,b) {
if (a === b != a.localeCompare(b) === 0) {
console.log(a, b, a === b, a.localeCompare(b))
}
}

compareEm('\u6f22', "漢") // no output
compareEm('💩', "\uD83D\uDCA9") // no output

是否存在这不成立的情况?如果我更改语言环境,它会不再适用吗?

最佳答案

a.localeCompare(b) === 0 等同于 a === b

localeCompare 只有在

  1. 您开始注意非零答案的符号(例如 'á'.localeCompare('b'))

  2. 或者如果您添加标志,例如不区分大小写。

仅供引用,对于不相等的字符串,localeCompare 在浏览器中可能会不一致。

关于javascript - 对于 JS 字符串,a.localeCompare(b) === 0 是否总是与 a === b 相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20535571/

26 4 0
文章推荐: Javascript: webkitIsFullScreen 属性 IE 等效
文章推荐: javascript - Cocos2d : Get data from file(jsb. jsc) 失败
文章推荐: javascript - 使用