迭代方法你怎么理解

五个迭代方法:

#1----every()    特点:如果数组中的每一项都返回true,则返回true。

 var g =['mnblh',55,'25po',1140]

 var m =g.every(function(a,b,c){ a表示每一项 b表示下标 c表示原数组

     console.log(a);

     return a;

 })

 console.log(m);此时打印为true,因为数组里的每一项都返回true总结果就为true

#2----some()//特点:只要数组中的任意一项返回true,就返回true。

 var g =['mnblh',0,'25po',100]

 var m =g.some(function(a,b,c){  a表示每一项 b表示下标 c表示原数组

     console.log(a);

     return a;

 })

 console.log(m); 此时打印为true,因为数组里只要有一项返回true总结果就为true

#3---filter() 特点:(这个方法适用于筛选)给函数的结果一个条件,打印为符号条件的新数组。

 var g =['mnblh',0,'25po',100]

 var m =g.filter(function(a,b,c){ a表示每一项 b表示下标 c表示原数组

     console.log(a);

     return a>0; 函数结果的条件为大于0

 })

 console.log(m);打印结果为新的数组---[100]

#4---map() 特点:给函数的结果一个条件,把数组里的每项打印出来布尔值,组成一个新的数组以此作为打印结果。

 var g =['mnblh',0,'25po',100]

 var m =g.map(function(a,b,c){ a表示每一项 b表示下标 c表示原数组

     console.log(a);

    return a>0; 函数结果的条件为大于0

 })

 console.log(m);打印结果为新的数组--- [false, false, false, true]

 这个方法也可以进行运算,如果条件为return a*5;打印结果为---[NaN, 0, NaN, 500]

#5---forEach()//特点:(该方法不支持return给了也无效)该方法可以直接进行运算不需要给它函数的结果。

 var g =['mnblh',0,'25po',100]

 var m =g.forEach(function(a,b,c){ a表示每一项 b表示下标 c表示原数组

     console.log(a/2); 运算条件为除以2

      打印结果为---NaN,0,NaN,50

 })

 注:forEach和map的最大区别就在于,forEach没有返回值。 即使给forEach加上return也无效

你可能感兴趣的