嗨,这可能是一个简单的问题。所以我想用Javascript做一个基本的字谜功能。
以下代码段无效
anagrams = (phraseOne, phraseTwo) => {
if (phraseOne.split("").sort() === phraseTwo.split("").sort()) {
return true
} else {
return false
}
}
但这行得通
anagrams = (phraseOne, phraseTwo) => {
if (phraseOne.split("").sort().join("") === phraseTwo.split("").sort().join("")) {
return true
} else {
return false
}
}
为什么?在加入(“”)它们之前,这些数组是相同的
答案 0 :(得分:0)
这是因为在JS中按值比较字符串,并按引用比较数组。您可以在此处找到有关比较的更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness