简单的JS回文函数获得“意外标识符”错误

时间:2013-04-30 17:57:57

标签: javascript

这个简单的小函数抛出了“意外的标识符”错误,我不知道为什么。

function palindromeCheck(word) {
    var reversed = word.split("").reverse().join("");
    if (reversed === word) {
    return "Yay, " + word + " is a palindrome!";
  } else {
    return "Drats, " + word + " isn't a palindrome.";
  };
};

palindromeCheck("racecar");

1 个答案:

答案 0 :(得分:2)

你解决了问题,但可能还有另一个问题 -

回文可以是多个单词(或数字),带有标点符号和大写或小写字母。

'我是,我看到厄尔巴岛。'是一个回文,例如未通过测试。

('赛车'或'赛车',也是回文。)

更好的测试是剥离所有字母或数字,并忽略大小写。

function isPalindrome(word){
    var w= word.toLowerCase().replace(/[^0-9a-z]+/g, '');
    for(var i= 0, L= w.length-1;i<L;i++, L--){
        if(w[i]!== w[L]) return false;
    }
    return true;
}