一、作用
普通记忆:filter用于对数组的过滤,返回值是一个新的数组,数组中的内容是符合条件的元素。
使用记忆法记忆:谐音联想记忆+地点故事联想+地点定位记忆
一个有扶手的椅子上放着一个竖着的盒子,盒子中是符合条件的物品。
二、语法
Array.filter(function(arrValue,index,arr),thisValue)
第一个参数必须是一个函数,数组中的美一项都会执行这个函数,判断是否为true,如果符合条件的话,就会放进返回值的新数组中。
函数中的第一个参数是数组的每一项指的是一项,必须得有,当前元素的值。
三、示例
let arr=[1,2,3,4,5,6,7,8,9] let arr1=arr.filter(num=>{return num>5}) console.log(arr1)//[6,7,8,9]
四、注意
filter()不查找空数组
filter()不会改变原数组
filter ()的返回值中如果是引用数据类型的话会出现一些情况如果改变原返回值中引用数据类型的内容的话就会改变原数组中的内容,因为新数组中的引用数据类型,指针仍然指的是原数组的那一项如果是基本数据类型就没有问题var tempList = [ { name: 'haha', sex: '女' }, { name: 'xinling', sex: '女' }, { name: 'xiang', sex: '男' } ] var newT = tempList.filter((item) => { return item.sex == '女' }) //[{ name: 'haha', sex: '女' }, { name: 'xinling', sex: '女' }] newT.forEach(it => { if(it.name == 'xinling') { // it.type = '明星' it['type'] = '明星' it.sex = ' beautiful girl' } }) console.log('-----newT2===', newT) //[{ name: 'haha', sex: '女' }, { name: 'xinling', sex: '女' , type:'明星' }] console.log('-----tempList===', tempList) //[{ name: 'haha', sex: '女' }, { name: 'xinling', sex: '女', type:'明星' }, { name: 'xiang', sex: '男' }]
标签:xinling,name,处理,数据类型,sex,filter,数组 From: https://www.cnblogs.com/kuaiCan-4597/p/17005218.html