forEach()
从头到尾的遍历的数组,可以改变数组的值。为数组中的每个元素都执行一遍传递给forEach()的回调函数。
var arr = [2, 4, 65, 23];
var sum = 0;
arr.forEach(function(value, index, array) {
console.log('每个数组元素' + value);
console.log('每个数组元素的索引号' + index);
console.log('数组本身' + array);
sum += value;
})
console.log(sum); // 94
every
evary()用来检测该数组中每一个元素是否都满足指定函数的条件,返回的布尔值如果给定是一个空数组,则返回true。
var arr1 = [22, 45, 3, 5, 24];
// var arr2 = [];
var newArr1 = arr1.every(function(value) {
return value > 20;
});
console.log(newArr1); // false
some
遍历数组,判断是否有满足条件的元素,如果有返回true,没有返回false查找数组唯一的元素。
// some 查找数组中是否满足条件的元素
var arr = [10, 30, 4];
var flag = arr.some(function(value, index, array) {
// value 数组元素
// index 数组元素的索引
// array 当前的数组
return value < 15;
});
console.log(flag); // true 返回的是布尔值,只要查找到满足条件的一个元素就立马终止循环
var arr1 = ['red', 'pink', 'blue'];
var flag1 = arr1.some(function(value) {
return value == 'pink';
});
console.log(flag1); // true
map
map() 生成一个新数组 其结果是该数组每一个元素 调用指定函数的返回值。
var arr = [1,2,3];
var newArr = arr.map(function(value) {
return value < 2;
});
console.log(newArr); // [true, false, false]
filter
遍历数组,筛选出满足条件的项,将满足条件的项放到新数组中,并且返回。返回值:返回存放了满足条件的项的新数组,如果发现回调函数,返回了true,就将当前的value放到新数组中。
var arr = [12, 66, 4, 34, 2, 67];
var newArr = arr.filter(function(value, index, array) {
// value 数组元素
// index 数组元素的索引
// array 当前的数组
return value > 20;
});
console.log(newArr); // [66,34,67] 返回值是一个数组