javascript中关于数组的迭代方法

    //都接受3个参数,分别为:值、在数组中的位置、数组对象本身
var num = [2, 1, 5, 4, 2, 1, 6, 8, 19];
//every:若每一项都返回true,则返回true
var a= num.every(function(item,index,array){
return item>5
});
console.log(a);
  // false //filter:返回true项组成的数组
var b= num.filter(function(item,index,array){
return item>5
});
console.log(b);
  // [6, 8, 19] //forEach:没有返回值
var c= num.forEach(function(item,index,array){
return item>5
});
console.log(c);
  // undefined //map:返回返回值组成的数组
var d= num.map(function(item,index,array){
return '第'+index+'项:'+item;
});
console.log(d);
  // ["第0项2", "第1项1", "第2项5", "第3项4", "第4项2", "第5项1", "第6项6", "第7项8", "第8项19"] //some:若任一项返回true,则返回true
var e= num.some(function(item,index,array){
return item>5
});
console.log(e);
  // true   
//    ===================归并方法
  
//  reduce与reduceRight迭代数组的所有项,返回一个最终值
//    reduce与reduceRright相同,一个从前开始迭代,一个从后开始迭代
// 传入四个参数:前一项、当前项、项的索引、数组本身
// 前一项prev为前面函数所执行的结果
var sum=num.reduce(function(prev,cur,index,array){
if(index==1){
return '第'+index+'项:'+cur+';';
}
return prev+'第'+index+'项:'+cur+';';
});
console.log(sum);
// 第1项:1;第2项:5;第3项:4;第4项:2;第5项:1;第6项:6;第7项:8;第8项:19;
 
上一篇:转:如何学习SQL(第二部分:从关系角度理解SQL)


下一篇:基于Qt的第三方库和控件