Array 类型的迭代方法包括以下5种:对数组中每一项运行给定函数,且不会改变数组中包含的值
every() 返回值是 true 或 false(逻辑且);
some() 返回值是 true 或 false(逻辑或);
filter() 返回值是给定函数为 true 的元素组成的数组;
forEach() 无返回值;
map() 返回每次函数调用执行结果组成的数组;
var values = new Array();count = values.push(5, 10, 12);var everyvalues = values.every(function(item, index, array){console.log(item);}); // 输出 5console.log(everyvalues);// 输出 falsevar somevalues = values.some(function(item, index, array){console.log(item);}); // 输出 5 10 12console.log(somevalues);// 输出 false// .every() 和 .some() 的执行情况证明以下两点:1、js 存在 短路求值;2、js 函数的默认返回值是 0,即 falsevar filtervalues = values.filter(function(item, index, array){return eval(item) > 5;});console.log(filtervalues);// 输出 [10, 12]values.forEach(function(item, index, array){console.log(item + index);// 输出 5 11 14});var mapvalues = values.map(function(item, index, array){return item - index;});console.log(mapvalues);// 输出 [5, 9, 10]新闻热点
疑难解答