js 125. 验证回文串

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
说明:本题中,我们将空字符串定义为有效的回文串。

示例 1:

输入: “A man, a plan, a canal: Panama”
输出: true
解释:“amanaplanacanalpanama” 是回文串
示例 2:

输入: “race a car”
输出: false
解释:“raceacar” 不是回文串

提示:
1 <= s.length <= 2 * 105
字符串 s 由 ASCII 字符组成

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/valid-palindrome

    var isPalindrome = function (s) {
                var arr = []
                var regx = /^[A-Za-z0-9]*$/;
                for (const key of s) {
                    if (regx.test(key)) {
                    //取出所有的数字或字母
                        arr.push(key.toLocaleLowerCase())
                    }
                }
                return fn(arr)
                //判断是否为回文
                function fn(str) {
                    var center = parseInt(str.length / 2);
                    for (var i = 0; i < center; i++) {
                        if (str[i] !== str[str.length - 1 - i]) {
                            return false;
                        }
                    }
                    return true
                };
            }

你可能感兴趣的:(力扣,javaScript,javascript,leetcode,开发语言)