Array.find()
arr.find(callback[, thisArg])
返回数组中满足callback
函数的第一个元素的值,否则返回 undefined
。
let array1 = [5, 12, 8, 110, 88];
let found = array1.find(element => {
return element > 10;
});
console.log(found);
// output: 12
Array.findIndex()
findIndex() 方法传入一个测试条件(函数),返回符合条件的数组第一个元素位置(index)。
findIndex() 方法为数组中的每个元素都调用一次函数执行:
当数组中的元素在测试条件时返回 true 时, findIndex() 返回符合条件的元素的索引位置,之后的值不会再调用 执行函数。
如果没有符合条件的元素返回 -1
var allPeple = [{
name: '小王',
id: 14
},{
name: '大王',
id: 41
},{
name: '老王',
id: 61
}]
var myTeamArr = [{
name: '小王',
id: 14
}]
var PId = 14; //假如这个是要人的ID
function testFunc(item){return item.id == PId ;}
//判断myteam里是不是有这个人,如果==-1 代表没有,在allPeople中找到他,添加入我的队伍
myTeamArr.findIndex(testFunc) == -1
? myTeamArr.push(allPeple.find(testFunc))
: alert('已存在该人员');