Javascript 数组按类型过滤

标签 javascript arrays filter types

我刚刚开始学习 javascript 并测试一些数组代码,我结束了这个,有一个更好的方法可以按值类型创建过滤器。 (抱歉,有任何错误,英语不是我的母语)。

var list = ["lorem1",  "lorem2", "lorem3" , "lorem4", 1 ,2 ,3]
var number = 1
var type = typeof number
var numbers = list.filter(item => typeof item === type)
var words = list.filter(item => typeof item != type)
// Filter by value types
console.log(numbers)
console.log(words)

最佳答案

您可以编写一个函数并将类型作为参数传递,如下所示:

var list = ["lorem1",  "lorem2", "lorem3" , "lorem4", 1 ,2 ,3]

function filterByType(arr, type){
  return arr.filter(item=> typeof item === type)
}

const words = filterByType(list, 'string')
const numbers = filterByType(list, 'number')

console.log({words, numbers})

关于Javascript 数组按类型过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69816276/

相关文章:

c - 传递二维数组时发出警告

java - 迭代变量在for循环外是+1?

珀尔;如何按值过滤哈希(指定条件)

javascript - Fullpage.js 一些幻灯片淡入

java - 从 HashSet<String> 转换为 String[]

magento - 如何在 Magento 中将 AND 过滤器/条件添加到 OR 条件?

javascript - AngularJs 使用三个过滤器进行过滤,但三个过滤器中只有两个起作用

javascript - React slice() 使用 immer 进行突变转换

javascript - 如何防止调整大小的动画 (javascript) 弄乱我的 (css) "float"布局?

javascript - php 生成的内容无法调用 javascript 函数