JavaScript判断整数是否为回文数的实现方法

作者:纸飞机

时间:2026-10-24

浏览:209

本文介绍如何使用JavaScript判断一个整数是否为回文数。通过示例解析回文数定义,重点讲解将数字转换为字符串后反转比较的方法,并处理负数及边界情况。提供完整代码实现与注意事项,帮助开发者掌握基础算法逻辑。

文章目录

题目要求

给定一个整数 x,请判断该整数是否为回文数。如果是,返回 true;否则,返回 false。

回文数的定义是:该整数从左向右读(正序)与从右向左读(倒序)的结果完全一致。例如,121 是回文数,而 123 不是。

示例 1:

输入:x = 121
输出:true

示例 2:

输入:x = -121
输出:false
解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:

输入:x = 10
输出:false
解释:从右向左读, 为 01 。因此它不是一个回文数。

示例 4:

输入: x = -101
输出: false

提示:

  • -231 <= x <= 231 - 1

解题思路

核心思路是将数字本身进行反转,然后将反转后的值与原值进行比较。需要注意的是,如果反转后的数字过大,可能会引发整数溢出问题,目前暂未找到完美的通用解决方案,后续如有新发现将更新文章。

具体分析步骤如下:

1. 首先将数字转换为字符串,使用 number.toString() 方法。

2. 接着将字符串拆分为字符数组,使用 string.split() 方法。

3. 对数组中的元素顺序进行倒置处理。

4. 将倒置后的数组重新拼接为字符串。

5. 最后将处理后的字符串与原始字符串进行比较。如果两者相同,则返回 true;否则返回 false。

代码实现

/*
 * @lc app=leetcode.cn id=9 lang=javascript
 *
 * [9] 回文数
 */

// @lc code=start
/**
 * @param {number} x
 * @return {boolean}
 */
 var isPalindrome = function(x) {
        var xString = x.toString();
        var xStringArr = xString.split('');
        var resultStr = '';
        for (var i = xStringArr.length-1; i >= 0; i--) {
            resultStr += xString.charAt(i);
        }
    if(resultStr === xString){
        return true;
    } else {
        return false;
    }
}
// @lc code=end

其他方法

  • 另一种思路是提取数字的后半段,通过取余操作将其反转,然后与前半段数字进行比较。
  • 还可以避免使用字符串反转思路,通过个位、十位、百位等数值转换后相加进行比较,逻辑同样可行。
  • 此外,也可以直接利用 JavaScript 内置的 reverse 方法来实现数组反转。

总结

至此,关于如何使用 JavaScript 判断整数 x 是否为回文数的介绍已完成。如需了解更多相关内容,欢迎搜索本站往期文章或继续浏览后续推荐内容,感谢大家的支持!

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章