此函数清除字符串(删除所有非字母数字字符,包括下划线),然后将每个字母拆分为一个数组,以便可以将其反转,然后对照原始字母进行检查。
在console.log(cleanStr)处,它返回反向数组,但我不知道为什么。
function checkIfPalindrome(str) {
var cleanStr = str.toLowerCase().replace(replace, "" ).split("");
var reversedStr = cleanStr.reverse();
console.log(cleanStr); // why is this returning reverseStr, the reversed array?
if (cleanStr == reversedStr){
return true
}
return false
}
checkIfPalindrome("five|\_/|four");
该reverse()
方法在原地反转数组-对其调用的数组进行突变。尝试创建一个新数组:
const cleanStr = str.toLowerCase().replace(replace, "" ).split("");
const reversedStr = [...cleanStr].reverse();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句