JavaScript数组方法总结
every
检测数组内所有元素是否都符合条件,返回一个Boolean值;
全部符合条件,返回true,否则返回false;
接收一个回调函数
案例:
let arr = [2,2,2,2,2,2,2,2,2]
let status = arr.every((item) => item === 2)
console.log('status:',status) // truelet arr = [2,2,12,2,2,2,2,2,2]
let status = arr.every((item) => item === 2)
console.log('status:',status) // false
检查一个数组是不是另一个数组的子集,如果是返回true,否则返回false
let arr1 = [1,2,3,4,5,6,7,8]let arr2 = [2,3,4]const fun1 = (arr1,arr2) => arr2.every((item) => arr1.includes(item))console.log("打印:",fun1(arr1,arr2)) // 打印: true
some
检测数组中是否有一个元素通过了函数的测试条件,满足条件返回真值,否则返回false
let arr3 = [7,3,9,5,11]
let elem = ((item) => item % 2 === 0)
let arr4 = arr3.some(elem)
console.log('有一个满足的条件:',arr4) // 有一个满足的条件: falselet arr3 = [7,3,10,5,11]
let elem = ((item) => item % 2 === 0)
let arr4 = arr3.some(elem)
console.log('有一个满足的条件:',arr4) // 有一个满足的条件: true
find
返回数组中满足测试函数的第一个值
let arr5 = [{id: 1,name:'a1',},{id: 2,name:'a2',},{id: 3,name:'a3',},{id: 4,name:'a4',},
]
let f1 = arr5.find((item) => item.id === 2)
console.log('f1:',f1) // {id: 2, name: 'a2'}let arr5 = [{id: 1,name:'a1',},{id: 2,name:'a2',},{id: 3,name:'a3',},{id: 4,name:'a4',},
]
let f1 = arr5.find((item) => item.id === 12)
console.log('f1:',f1) // undefined
使用箭头函数和解构
let arr5 = [{id: 1,name:'a1',},{id: 2,name:'a2',},{id: 3,name:'a3',},{id: 4,name:'a4',},
]
let f1 = arr5.find(({id}) => id === 4)
console.log('f1:',f1) // {id: 4, name: 'a4'}