JavaScript中的forEach

  forEach()函数从头到尾把数组遍历一遍。有三个参数分别是:数组元素元素的索引数组本身(如果是一个参数就是数组元素,也就是数组的值)。

 1 var data=[1,2,3,4,5,6];
 2 var sum=0;
 3 data.forEach(function(v){//其中的v就是数组的值 123456
 4 sum+=v;})
 5 document.write(sum+"
 6 ");//打印出来是21
 7 data.forEach(function(o,p,q){//分别对应:数组元素,元素的索引,数组本身
 8 q[p]=o+1;
 9 })
10 document.write(data);

  注意:forEach无法在所有元素都传递给调用的函数之前终止(而for循环却有break方法),如果要提前终止,必须把forEach放在try块中,并能抛出一个异常。如果forEach()调用的函数抛出foreach.break异常,循环会提前终止:

 1 function foreach(a,b,c){
 2 
 3 try{
 4 
 5 a.forEach(b,c);
 6 
 7 }catch(e){
 8 
 9 if(e===foreach.break)return;
10 
11 else throw e;
12 
13 }
14 
15 16 
17 foreach.break=new Error("StopIteration");
18 
19 }

 

posted @ 2016-12-09 23:21  ZhenDeHao  阅读(235)  评论(0编辑  收藏  举报