前言
- 当我们从后端请求到数据列表时,我们需要对其中符合条件的数据进行筛选、当我们拿到数据,我们希望把英文首字母大写,数组去重等等
定义和用法
filter
用于对数组进行过滤。
filter
方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素filter
不会对空数组进行检测;不会改变原始数组
语法
参数 | 描述 |
---|
currentValue | 当前元素的值(必选项) |
index | 当前元素的索引值(可选项) |
arr | 当前元素的数组对象(可选项) |
Array.filter((currentValue, index, arr) => {})
实例
let Array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
let newArr = Array.filter((item) => {
return item > 6
})
console.log(newArr)
let Array = [1, 2, 3, 4, 5, 6]
let newArr = Array.filter((item) => {
return item % 2 === 0
})
console.log(newArr)
- 对数组进行去重
indexOf
总是返回第一个元素的位置,后续的重复元素位置与 indexOf
返回的位置不相等,因此被 filter
滤掉了,所以重复的元素仅会保留第一个位置的元素
let Array = [1, 2, 2, 3, 3, 4, 4, 5,5, 6]
let newArr = Array.filter(item,index.arr =>{
return arr.indexof(item) === index
})
console.log(newArr);
let Array = [1, '', 2, 3, '', 4, 5, '', 6]
let newArr = Array.filter((item) => {
return item && item.trim()
})
console.log(newArr)