温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2020-08-29 14:36:46 来源:亿速云 阅读:1008 作者:小新 栏目:web开发

这篇文章主要介绍了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判断是否为回文字符串的方法内容对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,遇到问题就找亿速云,详细的解决方法等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI