gpt4 book ai didi

javascript - 带 FOR 循环的回文函数

转载 作者:行者123 更新时间:2023-11-30 15:15:04 26 4
gpt4 key购买 nike

我在回文函数方面遇到了问题。这是我的功能:

function palindrome(str) {

var newStr= str.replace(/[^0-9a-z]/gi, '').toLowerCase().split("");

for(var i=0; i < (newStr.length)/2; i++){
if(newStr[i] == newStr[newStr.length-i-1]){
return true;
} else
return false;
}

} palindrome("almostomla");

除了这个“almostomla”和其他类似的词,它与每个词都很相配,例如:“amariorama”,这是不正确的。为什么会这样?

最佳答案

首先,您在循环中使用了 return 语句,它在仅检查数组的第一个和最后一个元素后立即执行,然后函数返回 true 或 false,这是错误的。

另外,请注意:almostomla 和 amariorama 不是回文使用 reverse() 方法很容易检查回文串,如下所示:

    function palindrome(s) {
var reverseString = s.split("").reverse().join("");
if(s==reverseString)
console.log("palindrome");
else
console.log("not palindrome");
}
palindrome("almostomla");

关于javascript - 带 FOR 循环的回文函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44592870/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com