详解JavaScript中的every()方法
JavaScript数组中的每个方法测试数组中的所有元素是否经过所提供的函数来实现测试。
语法
array.every(callback[,thisObject]);
下面是参数的详细信息:
- callback:函数用来测试每个元素
- thisObject:对象作为该执行回调时使用
返回值:
返回true,如果此数组中的每个元素满足所提供的测试函数。
兼容性:
这种方法是一个JavaScript扩展到ECMA-262标准;因此它可能不存在在标准的其他实现。为了使它工作,你需要添加下面的脚本的代码在顶部:
if(!Array.prototype.every)
{
Array.prototype.every=function(fun/*,thisp*/)
{
varlen=this.length;
if(typeoffun!="function")
thrownewTypeError();
varthisp=arguments[1];
for(vari=0;i<len;i++)
{
if(iinthis&&
!fun.call(thisp,this[i],i,this))
returnfalse;
}
returntrue;
};
}
例子:
<html>
<head>
<title>JavaScriptArrayeveryMethod</title>
</head>
<body>
<scripttype="text/javascript">
if(!Array.prototype.every)
{
Array.prototype.every=function(fun/*,thisp*/)
{
varlen=this.length;
if(typeoffun!="function")
thrownewTypeError();
varthisp=arguments[1];
for(vari=0;i<len;i++)
{
if(iinthis&&
!fun.call(thisp,this[i],i,this))
returnfalse;
}
returntrue;
};
}
functionisBigEnough(element,index,array){
return(element>=10);
}
varpassed=[12,5,8,130,44].every(isBigEnough);
document.write("FirstTestValue:"+passed);
passed=[12,54,18,130,44].every(isBigEnough);
document.write("SecondTestValue:"+passed);
</script>
</body>
</html>
这将产生以下结果:
FirstTestValue:falseSecondTestValue:true
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下