在javascript中按字符串长度筛选数组

Filter array by string length in javascript

本文关键字:筛选 数组 字符串 javascript      更新时间:2024-06-17

我是javascript 的初学者

我有一个包含的数组

array_1 = ["the","quick","brown","fox","jumped","over","the","lazy","dog"]

我想要另一个数组,但只包含长度>3的单词

array_cleaned = ["quick","brown","jumped","lazy"]

目前的实施方式:

array_1 = ["the","quick","brown","fox","jumped","over","the","lazy","dog"]
array_clean = [];
for(var i=0; i<array_1.length; i++){
    if(array_1[i].length > 3) 
        array_clean.push(array_1[i]);
}
document.write(array_clean)

但我正在寻找一种真正过滤它的方法。有什么想法吗?

您可以使用filter方法:

const array_1 = ["the", "quick", "brown", "fox", "jumped", "over", "the", "lazy", "dog"];
const new_array = array_1.filter((element) => {
  return element.length > 3;
});
// OR refactor
// const new_array = array_1.filter( (element) => element.length > 3);
console.log(new_array)
// Output:
// ["quick", "brown", "jumped", "over", "lazy"]

您可以过滤

var array_cleaned = array_1.filter(function(x) {
    return x.length > 3;
});

如果你不想使用filter函数,我认为这很好。

arrayClean = [];
for(int i = 0; i<array1.length; i++) {
     if(array1[i].length < 3) {
          arrayClean[i] = array[i];
     }
}