js for 与forEach遍历

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

参考

浅谈JavaScript中forEach与each - 方式代码 - 博客园

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容