for遍歷
var arr=[1,2,3,4,5]
for (var i=0;i<arr.length;i++){
console.log(arr[i]);
}
1
2
3
4
5
forEach遍歷
forEach默認有三個參數(shù),第一個是元素,第二個是索引在旱,第三個是數(shù)組本身。
var arr=[1,2,3,4,5]
arr.forEach(function(x,y,z){
console.log(x)
})
1
2
3
4
5
arr.forEach(function(x,y,z){
console.log(y)
})
0
1
2
3
4
arr.forEach(function(x,y,z){
console.log(z)
})
(5) [1, 2, 3, 4, 5]
(5) [1, 2, 3, 4, 5]
(5) [1, 2, 3, 4, 5]
(5) [1, 2, 3, 4, 5]
(5) [1, 2, 3, 4, 5]
舉個例子
用forEach累加一下數(shù)組元素之后
<script>
var arr=[1,2,3,4,5]
function add(){
var s=0;
arr.forEach(function(x){
//x represents every item in arr
s+=x;
})
//cal s
return s;
}
alert(add())//15
</script>
嵌套在函數(shù)里就return一下推掸。當然也可以不用嵌套在函數(shù)里
var arr=[1,2,3,4,5]
var s=0;
arr.forEach(function(x){
//x represents every item in arr
s+=x;
})
s//15
更簡單一些
for of方法 這種比較簡潔 和python類似
var arr=[1,2,3,4,5]
var s=0;
for (var x of arr){
s+=x
}
s//15
對比一下python的實現(xiàn)
>>> x=[1,2,3,4,5]
>>> s=0
>>> for item in x:
s+=item
>>> s
15