检查数组中是否有回文 - JavaScript
我们需要编写一个 JavaScript 函数,该函数采用一个字符串 / 数字文字数组,并返回原始数组中所有回文元素的子数组。
例如 −
如果输入数组为 −
const arr = ['carecar', 1344, 12321, 'did', 'cannot'];
那么输出应该是 −
const output = [12321, 'did'];
我们将创建一个助手函数,它采用一个数字或字符串并检查它是否是一个布尔值。然后,我们将遍历数组,过滤回文元素并返回过滤后的数组
示例
以下是代码 −
const arr = ['carecar', 1344, 12321, 'did', 'cannot'];
const isPalindrome = el => {
const str = String(el);
let i = 0;
let j = str.length - 1;
while(i < j) {
if(str[i] === str[j]) {
i++;
j--;
}
else {
return false;
}
}
return true;
};
const findPalindrome = arr => {
return arr.filter(el => isPalindrome(el));
};
console.log(findPalindrome(arr));输出
这将在控制台中生成以下输出 −
[ 12321, 'did' ]
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP