js判断是否为回文字符串的方法

这篇文章主要介绍了js判断是否为回文字符串的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

专注于为中小企业提供成都网站建设、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业长乐免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

                                                           js如何判断是否为回文字符串?本篇文章就给大家介绍js判断一个字符串是否为回文字符串的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

首先我们来了解一下什么是回文字符串?

回文字符串就是,我们从开始到结束读它,和从末尾到开始读它是一样的。例:ABCBA。

接下面我们将给大家介绍如何轻松地使用JavaScript函数来判断一个字符串是否为回文字符串。

其实判断一个字符串是否为回文的逻辑非常简单:只需要从字符串中删除特殊字符并反转结果。如果字符串相等(过滤后的字符串和反向过滤后的字符串)那么这个字符串就是回文字符串,是不是很容易!

我们来看看JavaScript是如何遵循上述逻辑实现效果的。

1、使用基本功能来进行验证

按照上面提到的逻辑,我们只需创建一个包含我们需要字符串的变量。首先,我们将字符串的所有字符转换为小写版本,然后我们删除特殊字符,最后比较字符串,如果它们相等,函数将返回一个确认它的布尔值:

/** 
 *定义判断给定字符串是否为回文的函数isPalindrome()。
 * 
 * @returns {Boolean}
 */
function isPalindrome(str){
    var normalized = str.toLowerCase().match(/[a-z]/gi).reverse();
    return normalized.join('') === normalized.reverse().join('');
}

因此,您可以使用强制转换的isPalindrome方法,该方法提供一个字符串作为第一个参数,这将返回一个布尔值,该布尔值会注意到它是否是:

if(isPalindrome("Go dog.")){
    console.log("它是回文");
}else{
    console.log("它不是回文");
}

2、使用原型函数进行验证

如果你想要判断一个字符串是否是回文而又不提供它作为任何函数的第一个参数,只要该变量是一个字符串,你就可以通过扩展String原型并为它创建自己的函数来创建一个快捷方式。通过这种方式,你可以调用isPalindrome方法,就好像它是字符串的属性一样,例如:

/** 
 * 允许校验的字符串扩展函数
 * 字符串是否为回文。
 * 
 * @returns {Boolean}
 */
 String.prototype.isPalindrome = function () {
    var normalized = this.toLowerCase().match(/[a-z]/gi).reverse();
    return normalized.join('') === normalized.reverse().join('');
 }

因此,您可以使用isPalindrome方法为字符串强制转换,这将返回一个布尔值,注意到它是否:

if("Go dog.".isPalindrome()){
    console.log("它是回文");
}else{
    console.log("它不是回文");
}

感谢你能够认真阅读完这篇文章,希望小编分享js判断是否为回文字符串的方法内容对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,遇到问题就找创新互联,详细的解决方法等着你来学习!


分享名称:js判断是否为回文字符串的方法
文章分享:http://hbruida.cn/article/jcpgej.html