some()方法
-
语法:
arr.some(fn[, thisArg])
参数 fn是用来测试每个元素的函数,接受三个参数:
item:数组中正在处理的元素。
index:数组中正在处理的元素的索引值。
array:some()被调用的数组。
thisArg:
执行 callback
时使用的 this
值。
2.描述:
some
为数组中的每一个元素执行一次 callback
函数,直到找到一个使得 callback 返回一个“真值”(即可转换为布尔值 true 的值)。如果找到了这样一个值,some
将会立即返回 true
。
some为数组中的每一个元素执行一次fn函数,直到找到一个使得fn返回 true 。如果找到了这样一个值,some将立即返回 ture ,其余的就不在运行,相当于短路运算符( && || )一样。如果到结束也没有找到,就会返回 false 。
fn 被调用是传入三个参数:元素的值,元素的索引,被遍历的数组。
some被调用不会改变数组。
例子:检测在数组中是否有大于10的元素。
var a = [11,50,40,3,5,80,90,4]
function some(item,index,array){
console.log(item);
return item>10
}
a.some(some);
//11
//true
当然这样还可以检索数组中是否存在某个值
function some(t,i,a){
if(t == 10){
console.log (t+"存在于这个数组");
}
console.log (10+"不存在于这个数组");
}
var a = [11,50,40,3,5,80,90,4];
a.some(some)
// 10不存在于这个数组
// false
3.总结:
注意:some如果遇到 true 就不在执行了。
如果都为 false 返回false。
不会改变原数组
every
和some的关系已经很确定了,同样是返回boolboolear值。