首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >确定给定字符串是否为有效回文。JS

确定给定字符串是否为有效回文。JS
EN

Stack Overflow用户
提问于 2016-02-29 17:51:18
回答 1查看 338关注 0票数 0

回文是一个词、短语、数字或其他符号或元素的序列,其含义可以按正向或反向的相同方式解释。著名的例子包括“阿莫尔,罗马”,“一个人,一个计划,一条运河:巴拿马”和“尼克松”中的“没有'x‘”。-维基百科

我们的目标是确定给定的字符串是否是有效的回文。

测试用例:

代码语言:javascript
复制
Test.assertEquals(palindrome("Amore, Roma"), true)
Test.assertEquals(palindrome("A man, a plan, a canal: Panama"), true)
Test.assertEquals(palindrome("No 'x' in 'Nixon'"), true)
Test.assertEquals(palindrome("Abba Zabba, you're my only friend"), false)

到目前为止我的代码是:

代码语言:javascript
复制
function palindrome(string) {
    var str = string.toLowerCase().replace(/[^a-z]+/g,"");
    var rev= str.split("").reverse().join("");

    if (string == rev) {
        return true; 
    } else {
        return false;
    }
}

显然,join还没有定义,但我不明白为什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-29 18:07:59

我通过以下更改尝试了您的示例,并且它在OSX10.9上工作:

代码语言:javascript
复制
function palindrome(string) {
    var str = string.toLowerCase().replace(/[^a-z]/g, "");

    var rev = str.split("").reverse().join("");

    return (str == rev);
}

从1.1版开始,数组join()方法就已经成为Javascript的一部分--具体的错误消息和环境的某些描述都应该有助于解决这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35706122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档