JavaScript 遍历元素检测
■知识点
使用every()方法可以确定数组的所有元素是否都满足指定的测试。参数为一个回调函数,everyO方法会为数组中的每个元素调用回调函数。如果回调函数为所有数组元素返回tme,则every()方法返回值为true;否则返回值为false。如果数组没有元素,则every()方法将返回true。
使用s0me()方法可以确定数组的元素是否存在有满足指定的测试。参数为一个回调函数,如果数组中最少一个元素返回true,则every()方法返回值为true;否则返回值为false。
■实例设计
【示例1】下面的示例检测数组中元素是否都为偶数,并进行提示。
function f(value, index, ar) {
if (value % 2 == 0) return true;
else return false;
}
var a = [2, 4, 5, 6, 8];
if (a.every (f) ) console.log ("都是偶数。");
else console.log("不全为偶数。");
【示例2】下面的示例检测数组中元素的值是否在指定范围内。范围值通过一个对象来设置。通过本示例演示thisArg参数的用法。
var f = function (value) {
if (typeof value !== 1 number1) return false;
else return value >= this.min && value <= this.max;
}
var a = [10, 15, 19];
var obj = { min: 10, max: 20 }
if (a.every (f, obj)) console . log ("都在指定范围内。");
else console. log ("部分不在范围内。");
【示例3】下面的示例检测数组中元素的值是否都为奇数。如果用someO方法检测到偶数,则返回true,并提示“不全是奇数。”;如果用someO方法没有检测到偶数,则提示“全是奇数。”。
function f(value, index, ar) {
if (value % 2 == 0) return true;
}
var a = [1, 15, 4, 10, 11, 22];
var evens = a.some(f);
if (evens) console. log("不全是奇数。");
else console.log("全是奇数。”);
点击加载更多评论>>