JavaScript迭代
定义:
指的是按照某种顺序逐个访问列表中的每一项。
迭代在数学中的定义: 在循环的基础上, 每一次循环, 都比上一次更为接近结果。
循环定义:指的是在满足条件的情况下,重复执行同一段代码。
迭代方法:
every() - 用于检测数组所有元素是否都符合指定条件。
- 如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测
- 如果所有元素都满足条件,则返回 true
- every() 不会对空数组进行检测
- every() 不会改变原始数组
var ages = [32, 33, 12, 40]; function checkAdult(age) { return age >= 18; } document.write(ages.every(checkAdult));//输出false
filter() - 检查指定数组中符合条件的所有元素。
- filter() 不会对空数组进行检测
- filter() 不会改变原始数组
var ages = [32, 33, 12, 40]; function checkAdult(age) { return age >= 18; } document.write(ages.filter(checkAdult));//输出32,33,40
forEach() - 循环调用数组的每个元素。
- forEach() 不会对空数组进行检测
var ages = [32, 33, 12, 40]; ages.forEach(function (item, index, array) { document.write(item);//依次输出32,33,12,40 });
map() - 返回一个新数组,元素为调用新函数得到的值。
- map() 不会对空数组进行检测
- map() 不会改变原始数组
var ages = [32, 33, 12, 40]; ages.map(function (item, index, array) { document.write(item);//依次输出32,33,12,40 });
some() - 检测数组中的元素是否满足指定条件。
- 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测
- 如果没有满足条件的元素,则返回false
- some()不会对空数组进行检测
- 不会改变原始数组
var ages = [32, 33, 12, 40]; function checkAdult(age) { return age >= 18; } document.write(ages.some(checkAdult));//输出true