回文数字

题目
判断一个整数是否是回文数。

示例1

1
2
输入:121
输出:true

示例2

1
2
3
输入:-121
输出:false
原因:数字正序从左往右读是 -121,而逆序从右往左读是 121-,所以不是回文数

解答
回文数即从左往右和从右往左均是同一个整数,那么在判断整个数字是否是回文的时候可以从逆序数字和原数字是否相等进行考虑,即:

CODE

1
2
3
4
5
6
7
8
9
function isPalindrome(data) {
let dataStr = data.toString(),
reverseDataStr = dataStr.split('').reverse().join('');

if (!/^[0-9]*$/g.test(data)) return false;
if (dataStr === reverseDataStr) return true;

return false;
}

总结
在将原数字进行逆序处理的方法很多,可以通过for循环进行处理,也可以利用代码中Array的reverse()方法进行逆序处理。