我一直在尝试创建一个输入,获取一个数组,并通过数字的位置检查它是否是回文数(使用 i = 0
和 j =数组.长度
)。
我只是不知道如何从这里继续以及我的代码有什么问题。
这就是我的职责:
function isPalindrome() {
var input;
var array = input.split("");
var i = 0;
var j = array.length;
while (i < j) {
if (array[i] != array[j]) {
return false;
} else {
i++;
j--;
}
}
return true;
}
最佳答案
一些事情。您的 isPalindrome 方法没有参数。您也没有将值传递给它。您还可以反转数组并检查它,而无需执行额外的循环。即:1221 反转 == 1221(真)而 1223 反转!= 3221(假)
查看我的fiddle.
$("#checkPalindrome").click(function () {
// added .val() here so we get the value.
var inp = $("#input").val();
$("#result").html("("+isPalindrome(inp)+")");
});
// added param str
function isPalindrome(str) {
// split the string into an array, reverse it, join it into a string again
// then check if it's equal to the original string passed.
return str.split('').reverse().join('') == str;
}
关于javascript - 输入回文数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30125904/