JavaScript学习——数组篇
数组中的迭代方法
数组中一共有5个迭代方法,每个方法接收两个参数:以每一项为参数运行的函数,以及可选的作为函数运行上下文的作用域对象(影响函数中的this值)。这些方法的第一个参数函数接收三个参数:数组元素、元素索引和数组本身
注意:哲学方法都不会改变调用他们的数组。
1.every()
对数组每一项都运行传入的函数,如果对每一项都返回true,则这个方法返回true。
2.some()
对数组每一项都运行传入的函数,如果有一项函数返回true,则这个方法返回true。
3.filter()
对数组每一项都运行传入的函数,函数返回true的项,会组成数组之后返回。这个方法非常适合筛选数组中满足给定条件的元素。
4.forEach()
对数组每一项都运行传入的函数,没有返回值。
5.map()
对数组每一项都运行传入的函数,返回由每次函数调用的结果构成的数组。这个方法非常适合创建一个与原始数组一一对应的新数组。
例子
let nums = [1, 2, 3, 4, 5, 4, 3, 2, 1]
let everyResult = nums.every((item, index, array) => item > 2);
alert(everyResult); //返回false
let somResult = nums.some((item, index, array) => item > 2);
alert(someResult); //返回true
let filterResult = nums.every((item, index, array) => item > 2);
alert(filterResult); //返回 [3, 4, 5, 4, 3]
let everyResult = nums.every((item, index, array) => item > 2);
alert(everyResult); //返回false
let mapResult = nums.every((item, index, array) => item * 2);
alert(mapResult); //返回新数组[2, 4, 6, 8, 10, 8, 6, 4, 2]
// 最后来看看forEach()方法 想当与使用for循环遍历数组
let nums = [1, 2, 3, 4, 5, 4, 3, 2, 1]
nums.forEach((item, index, array) => {
//执行某些操作
})