给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
例如,121 是回文,而 123 不是。
- 首先判断负数肯定不是回文数
- 将非负数 转换成字符串格式,将字符串一分为二,用前后对比法
- 如果for循环中没有返回false的话,执行完for循环返回true
/**
* @param {number} x
* @return {boolean}
*/
var isPalindrome = function(x) {
//数字如果是负数,就不是回文数
if(x >= 0){
// 将数字转换成字符串
let str = x.toString();
// 字符串的长度
let strLength = str.length;
// 对字符串进行遍历
// 我们将字符串一分为二前后进行对比,如果前后相等,就是回文
for(var i = 0 ; i < (strLength/2); i++){
// 比如121 ,i<1.5,拿第0项,和第2项进行判断
if(str[i] != str[strLength - i - 1]){
// 如果这里有一个不相等的直接返回false
return false;
}
// 相等的话继续执行for循环
}
// 最后执行完for循环没有返回false,就是回文数
return true;
} else{
return false;
}
};