filter()、some()、every()的区别与使用

107 阅读1分钟

filetr

filter()会对数据进行过滤,返回满足条件的新数组,不会改变原数组;

filter()不会对空数组进行检测

let arr=[1,3,4,5,6]
let filterArr=arr.filter(item=>item>3) //[4,5,6]
let filterArr1=arr.filter(item=>{return item<3}) //[1,2]
let filterArr2=[].filter(item=>{console.log('不会打印出内容,不检测')})

some

some() 检测数组有一个元素符合条件就返回true,并且不再往后检测;不会改变原数组 some() 不会对空数组进行检测

let arr=[1,3,4,5,6]
let someStatus=arr.some(item=>item>3) //true
let filterArr2=[].some(item=>{console.log('不会打印出内容,不检测')})

every

every() 检测数组,若有一个不满足条件就返回false,所有都满足条件返回true;不改变原数组 every() 不会对空数组进行检测

let arr=[1,3,4,5,6]
let someStatus=arr.some(item=>item>0) //true
let filterArr2=[].every(item=>{console.log('不会打印出内容,不检测')})