forEach:
语法:
array.forEach(callback(currentValue, index, array){
//do something
})
callback: 为数组中每个元素执行的函数,该函数接收三个参数,
参数一:当前数组中元素;参数二:索引; 参数三:当前数组。
map:
语法:
var
new_array = arr.map(callback[, thisArg])
forEach和map循环的区别:forEach没有返回值,即使你给出return也不管用,map会返回一个新数组给你,原数组不会发生改变。
filter:从字面上看就是过滤筛选的意思
语法:
var ages = [32, 33, 16, 40];
function checkAdult(age) {
return age >= 18;
}
返回一个新的对象数组,不会将原有的数组进行改变。
some:用于检测数组中的元素是否满足条件
注意:some不会对空数组进行检测,不会改变原始数组。
语法:
var ages = [3, 10, 18, 20];
function checkAdult(age) {
return age >= 18;
}
返回的是true或false。
every:用于检测数组中的所有元素是否符合指定条件,
注意:如果数组中有一个元素没有符合条件,则整个表达式返回的都是false,所有元素满足时才返回true,不会对空数组进行检测,不会改变原始数组。
语法:
var ages = [32, 33, 16, 40];
function checkAdult(age) {
return age >= 18;
}
返回的是true或false
find:返回通过测试(函数内判断)的数组的第一个元素的值,为数组中的每个元素都调用一次函数执行。
注意:
- 当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。
- 如果没有符合条件的元素返回 undefined
-
find() 对于空数组,函数是不会执行的。
- find() 并没有改变数组的原始值。
语法:
var ages = [3, 10, 18, 20];
function checkAdult(age) {
return age >= 18;
}
find
和some
很类似,都是寻找符合条件的,有一个就可以 不过some
进去搜罗了一圈回来如果有符合条件的就返回true,而find是将符合条件的那条数据返回出来
(返回第一个符合条件的对象)。