every与some数组的[与或]迭代,你也可以理解为整个数组的精准查找和模糊查找,这样更容易记忆。
every:
为数组的所有元素条件成立,返回true与false。
使用方法:数组.ever((值,索引,数组)=>条件公式)
some:
为数组中的元素至少1个成立,返回true与false。
使用方法:arr.some((值,索引,数组)=>条件公式)
测试讲解:
function test1(){
var arr=[1,18,9,44,21];
var a1=arr.every((v,i,a)=>v>=2);//或判断,返回false。
var a2=arr.some((v,i,a)=>v>=2);//与判断,返回true。
var a4=arr.filter(x=>x>=20).length>=2;//其它判断(两个条及以上条件成立),返回true。
var x=arr.every(v=>v>=30)?"✔":"✗"//注意判断语句的输出写法,返回"✗"。
var y=arr.some(v=>v>=21)?"✔":"✗"//注意判断语句的输出写法,返回"✔"。
}
function test1(){ var arr=[1,18,9,44,21]; var a1=arr.every((v,i,a)=>v>=2);//或判断,返回false。 var a2=arr.some((v,i,a)=>v>=2);//与判断,返回true。 var a4=arr.filter(x=>x>=20).length>=2;//其它判断(两个条及以上条件成立),返回true。 var x=arr.every(v=>v>=30)?"✔":"✗"//注意判断语句的输出写法,返回"✗"。 var y=arr.some(v=>v>=21)?"✔":"✗"//注意判断语句的输出写法,返回"✔"。 }示例:判断产品是否合格
注意var x=arr.every(v=>v>="合格")?"✔":"✗"判断语句的输出写法
注意var y=arr.some(v=>v>="合格")?"✔":"✗"判断语句的输出写法
注意var z=arr.filter(v=>v=="合格").length写法,也可以是var a4=arr.filter(x=>x>=20).length>=2;//其它判断(两个条及以上条件成立),返回true与false。
测试讲解:
function test2(){
for (var rng of Range("b2:b4")){
var arr=rng.Resize(1,4).Value()[0];
var x=arr.every(v=>v>="合格")?"✔":"✗"//注意判断语句的输出写法
var y=arr.some(v=>v>="合格")?"✔":"✗"//注意判断语句的输出写法
var z=arr.filter(v=>v=="合格").length//注意写法
rng.Offset(0,4).Value2=x;
rng.Offset(0,5).Value2=y;
rng.Offset(0,6).Value2=z;
}}
//注意var x=arr.every(v=>v>="合格")?"✔":"✗"判断语句的输出写法 //注意var y=arr.some(v=>v>="合格")?"✔":"✗"判断语句的输出写法 //注意var z=arr.filter(v=>v=="合格").length写法,也可以是var a4=arr.filter(x=>x>=20).length>=2;//其它判断(两个条及以上条件成立),返回true与false。 function test2(){ for (var rng of Range("b2:b4")){ var arr=rng.Resize(1,4).Value()[0]; var x=arr.every(v=>v>="合格")?"✔":"✗"//注意判断语句的输出写法 var y=arr.some(v=>v>="合格")?"✔":"✗"//注意判断语句的输出写法 var z=arr.filter(v=>v=="合格").length//注意写法 rng.Offset(0,4).Value2=x; rng.Offset(0,5).Value2=y; rng.Offset(0,6).Value2=z; }}