JS 数组迭代方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 数组迭代方法相关的知识,希望对你有一定的参考价值。

 

  

js中数组迭代方法有五种 some() , every(), filter(), forEach(),map(),传入这些方法的函数会接收三个参数(数组项的值,该项在数组中的位置,数组对象本身)

 

var items = [9,67,34,25,56];  
//如果items中的所有项都大于9返回true否则返回false 全部满足条件才行
var everyResult = items.every(function(item,index,array){
   return (item>9);
});
alert(everyResult);//返回值为true/false
//其中返回值类似的是 some(),every(),返回值都为true或false
// 如果items中有其中一项大于9就返回true 否则返回false 一真即真
var someResult = items.some(function(item,index,array){
      return (item>9);
});
alert(someResult);//返回值为true/false

// 返回数组中满足条件的项并赋值给filterResult
var filterResult = items.filter(function(item,index,array){
    return item>9;
});
alert(filterResult);//67,34,25,56

// 返回items中所有项的比较结果 条件满足返回true否则返回false 每项的结果都会返回
var mapResult = items.map(function(item,index,array){
    return item>9; //如果符号为*,+,-之类的话会返回它们的结果
});
alert(mapResult);

//forEach 没有返回值
items.forEach(function(item,index,array){
 alert(‘item‘);//类似for循环 执行的次数为数组的长度
});
 

 添加两个新方法 

//缩小方法--------------------------------------------------------------------------------------
var shu = [1,2,3,4,5];// pre是前一个值  cur是当前值
var sum = shu.reduce(function(pre,cur,index,array){
	//console.log(pre,cur);
	//1 2
	//3 3
	//6 6
	//10 5
      return pre+cur;
});

//alert(sum);

var summ = shu.reduceRight(function(pre,cur,index,array){
    console.log(pre,cur);
    // 5  4
    // 9  3
    //12  2
    //14  1
    return pre+cur;
});
alert(summ);

  

以上是关于JS 数组迭代方法的主要内容,如果未能解决你的问题,请参考以下文章

JS 数组迭代方法

JS中数组的迭代方法和归并方法

js数组的迭代器方法(someeveryforEachmapfilter)

js简洁代码片段

js数组高阶方法reduce经典用法代码分享

js数组高阶方法reduce经典用法代码分享