【发布时间】:2019-01-10 20:44:23
【问题描述】:
我正在尝试检查一个数字是否是 Javascript 中的回文
我已将数字转换为字符串,并将其反转并保存为新变量:reverseNum。但是,当我去检查 num == reverseNum 时,我似乎无法让逻辑正常工作
function palindrome() {
function reverse(num) {
num = num.toString();
let reverseNum = [];
for (let i = 1; i <= num.length; i++) {
reverseNum.push(num[num.length - i]);
}
return reverseNum.join('');
}
function check(num, reverseNum) {
//is palindrome
if (num == reverseNum) {
return true;
//is not palindrome
} else {
return false;
}
}
}
console.log(palindrome(121));
如果例如输入:121,输出:121,则预期输出应该为真
如果例如输入:79,输出:97,则预期输出应为假
【问题讨论】:
-
您在
palindrome中定义了check和reverse,但您永远不会在任何地方调用它们。 -
另外,
palindrome()似乎不接受任何参数。 -
而且
palindrome也没有return任何东西。 -
@MarkMeyer 我尝试添加参数 num 和 reverseNum,但出现错误,因此我将它们取出
-
你的代码不需要太复杂试试这个
function test (val) { const newVal = val.toString().split('').reverse().join('') return val.toString() === newVal } console.log(121)
标签: javascript algorithm palindrome