立扣题:给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
分析:回文数就是我们将一个数字无论是正着读还是反着读,结果都是相同的数,所以我们可以进行数字反转,然后对比,得结果。
☆代码
let x = -121;
function isPalindrome(x){
let temp = x; //存一个做对比
//先转成字符串,转成数组,在反转,在转成字符串
let flag = String(x).split('').reverse().join('')
if (temp == flag) {
return true
}else{
return false
}
}
console.log(isPalindrome(x));
☆进阶代码
let x = -121;
function isPalindrome(x){
if(x<0)return false //判断是否是负数,是直接返回false
let temp = x;
let res = 0
while(x != 0){ //循环从个位取数然后相加
let cur = x % 10;
x = Math.floor(x / 10);
res = res * 10 + cur;
}
return temp == res ? true : false;
}
console.log(isPalindrome(x));
有更好的方法欢迎留言!