所谓回文数,也就是给定一个数字,从左往右,还是从右往左,都是一个数,如:121、1221等。
解题方式:
- 通过循环,或者转为数组进行反转,然后与原始值是否相等
if (typeof num !== 'number' || num < 0) {
return false;
}
return num === Number(Array.from(String(num)).reverse().join(''));
代码语言:javascript复制function isPalindrome(num) {
if (typeof num !== 'number' || num < 0) {
return false;
}
let str = String(num);
let newStr = '';
for (let index = str.length - 1; index >= 0; index--) {
newStr = newStr str[index];
}
return newStr === str;
}
- 循环,左右判断
function isPalindrome(num) {
if (typeof num !== 'number' || num < 0) {
return false;
}
let str = String(num);
let length = str.length - 1;
for (let index = 0, len = Math.ceil(str.length / 2); index <= len; index ) {
if (str[index] !== str[length - index]) {
return false;
}
}
return true;
}