JS数组迭代方法

先说 every()和 some(),它们都用于查询数组中的项是否满足某个条件。

every()

var numbers = [1,2,3,4,5,4,3,2,1];
 var everyResult = numbers.every(function(item, index, array){
 return (item > 2);
 });

 alert(everyResult); //false

// 传入的函数必须对每一项都返回 true 相当于 number里面的参数都>2 才返回true

some():

var numbers = [1,2,3,4,5,4,3,2,1];

var someResult = numbers.some(function(item, index, array){
 return (item > 2);
 });

 alert(someResult); //true
// 传入的函数有一项>2都返回 true 相当于 number里面的参数有一个参数>2 返回true


filter():

var numbers = [1,2,3,4,5,4,3,2,1];
var filterResult = numbers.filter(function(item, index, array){
return (item > 2);
});
alert(filterResult); //[3,4,5,4,3]

//它利用指定的函数确定是否在返回的数组中包含某一项。例如,要 返回一个所有数值都大于 2 的数组  相当于过滤 filter就是过滤的意思吧!


 

map():

var numbers = [1,2,3,4,5,4,3,2,1];
var mapResult = numbers.map(function(item, index, array){
return item * 2;
});
alert(mapResult); //[2,4,6,8,10,8,6,4,2]

map()也返回一个数组,而这个数组的每一项都是在原始数组中的对应项上运行传入函数的结果。 例如,可以给数组中的每一项乘以 2,然后返回这些乘积组成的数组


 

forEach():

var numbers = [1,2,3,4,5,4,3,2,1];
numbers.forEach(function(item, index, array){
//执行某些操作
});

它只是对数组中的每一项运行传入的函数。这个方法没有返回值, 本质上与使用 for 循环迭代数组一样。


 

转载于:https://www.cnblogs.com/yuobey/p/10327178.html

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页