🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 语法:`array.filter(function(currentValue,index,arr),thisValue)` 参数一:一个回调函数,和map方法的回调函数一样,改回调有三个参数,第一个当前元素的值,必填参数,后面两个根据实际选填,分别代表当前袁术在原数组中对应的索引和原始数组 。 参数二:可选,对象作为该执行回调时使用,传递给函数,用作this的值,如果省略了thisValue,this的值变为undefined。 参数三:数组本身 # 1.基础使用,如:过滤出数组中大于5的数 ``` var arr=[1,2,3,,5,6,7] var myarr=arr.filter(v=>v>5) console.log(myarr);//输出[6,7] ``` 2.通过filter判断数组中是否存在某个值 ``` var arr=[1,2,3,,5,6,7] console.log(arr.filter(v=>v==5).length==0?"不存在":"存在")//输出存在 ``` 3.去掉空数组空字符串、undefined、null ``` var arr=["",undefined,null,1,2,3] var myarr=arr.filter(v=>v) console.log(myarr)//输出[1,2,3] ``` 4.数组去重 ``` var arr = [1, 2, 2, 3, 4, 5, 5,6,,7]; var myarr = arr.filter((item, index,self)=>self.indexOf(item)===index) console.log(myarr); //[1,2,3,4,5,6,7] ```