forEach()函數從頭到尾把數組遍歷一遍。有三個參數分別是:數組元素,元素的索引,數組本身(如果是一個參數就是數組元素,也就是數組的值。
var data=[1,2,3,4,5,6];
var sum=0;
data.forEach(function(v){//其中的v就是數組的值 123456
sum+=v;})
document.write(sum+"<br>");//打印出來是21
data.forEach(function(o,p,q){//分別對應:數組元素,元素的索引,數組本身
q[p]=o+1;
})
document.write(data);
注意:forEach無法在所有元素都傳遞給調用的函數之前終止(而for循環卻有break方法),如果要提前終止,必須把forEach放在try塊中,並能拋出一個異常。如果forEach()調用的函數拋出foreach.break異常,循環會提前終止:
function foreach(a,b,c){
try{
a.forEach(b,c);
}catch(e){
if(e===foreach.break)return;
else throw e;
}
}
foreach.break=new Error("StopIteration");
}