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默认有三个参数,第一个是元素,第二个是索引,第三个是数组本身。
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累加一下数组元素之后
<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>
嵌套在函数里就return一下。当然也可以不用嵌套在函数里
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的实现
>>> x=[1,2,3,4,5]
>>> s=0
>>> for item in x:
s+=item
>>> s
15