filter
filter方法不会改变原数组,会创建一个新数组,新数组中的各元素是符合条件的所有
元素,且不会对空数组进行检测。
let arr1 = [1,2,1,3]
let arr2 = arr1.filter(item=>item>1)
console.log(arr1,arr2)//[1, 2, 1, 3] [2, 3]
find
find方法不会改变原数组,返回符合条件的第一个数组元素,对于空数组,且不会对空数组进行检测。
let arr1 = [1,2,1,3]
let arr2 = arr1.find(item=>item>1)
console.log(arr1,arr2)//[1, 2, 1, 3] 2
some
some方法用于检测数据中的元素是否满足指定条件,会依次执行数组的每个元素,如果有一个元素满足条件,则表达式返回true,剩余的元素不会再执行检测,如果没有满足条件的元素,则返回false
let arr1 = [1,2,1,3]
let arr2 = arr1.some(item=>item>4)
console.log(arr1,arr2)//false
every
every用于检测数组所有元素是否都符合指定条件,如果有一个元素不满足,则返回false,且剩余元素也不会再进行检测,如果所有元素都满足条件,才会返回true
let arr1 = [1,2,1,3]
let arr2 = arr1.every(item=>item>4)
console.log(arr1,arr2)//false
map
map方法会对数组的每个元素进行计算,得到一个新数组
let arr1 = [1,2,1,3]
let arr2 = arr1.map(item=>item+=1)
console.log(arr1,arr2)//[1, 2, 1, 3] [2, 3, 2, 4]