You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LeetCode回文数判断JS代码本地通过但平台测试未通过问题

回文数判断代码LeetCode提交失败的解决方案

你的回文数判断代码在本地测试时能输出符合预期的文本,但提交到LeetCode后测试不通过,核心原因是返回值类型不符合题目要求:

题目明确要求返回布尔类型的true或false,但你的代码返回的是字符串类型的"true"和"false",LeetCode的测试用例会严格校验返回值类型,因此导致提交失败。

代码中的错误点:

  • 负数判断分支:return "false"; 返回字符串而非布尔值
  • 正数逻辑分支:return "true"、return "false"同样返回的是字符串类型

修正后的代码:

/**
 * @param {number} x
 * @return {boolean}
 */
var isPalindrome = function(x) {
    if (Math.sign(x) === -1) {
        return false;
    } else {
        let y = x.toString(); // 转换为字符串
        let reversedStr = y.split('').reverse().join(''); // 反转字符串
        let revX = parseInt(reversedStr);
        return x === revX;
    }
};

更简洁的优化版本:

不需要将反转后的字符串转回数字,直接比较原字符串和反转后的字符串即可,逻辑更清晰:

/**
 * @param {number} x
 * @return {boolean}
 */
var isPalindrome = function(x) {
    if (x < 0) return false;
    const str = x.toString();
    return str === str.split('').reverse().join('');
};

内容的提问来源于stack exchange,提问作者mostafa ali Nafady

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 00:55:13