for...infor...of和forEach

Posted mwxz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了for...infor...of和forEach相关的知识,希望对你有一定的参考价值。

let arr = [1,2,3,4,5,6];
        arr.name="AAA";
        for(var i in arr){
            //遍历的实际是对象的属性名臣,每一个元素的索引被视为一个属性
            //当我们手动给Array对象添加一个额外的属性,for...in将会带来意外效果
            console.log(i,typeof i);//1,2,3,name
        }
        for(var i of arr){
            //for ...of则支循环本身的元素
            //但是ES6,对于低版本的浏览器支持不是很好,如IE6,但现在估计绝了
            console.log(i,typeof i);//123
        }
        arr.forEach((element,index,array)=>{
            //它接收一个函数,每次迭代就自动回调该函数
            //forEach本身无法跳出循环,必须遍历完所有的数据才能结束

            /**
             *element:指当前元素的值 
             * index:指向当前的索引
             * array:指向array的本身
             */
           
            console.log(index,element)
            
        })

 附加一张for循环的区别表格:

技术图片

 

图摘自:简书-->痦子

 

以上是关于for...infor...of和forEach的主要内容,如果未能解决你的问题,请参考以下文章

Unity3D 问题总结Unity报错提示:InvalidOperationException: Collection was modified; enumeration operation ma(代

Unity3D 问题总结Unity报错提示:InvalidOperationException: Collection was modified; enumeration operation ma(代

使用刀片在阵列上放置一个 foreach [重复]

c#语言中,foreach循环语句,循环走到最后一层的条件怎么写?

laravel5.4+vue.jslaravel 循环三维数组,解决:htmlentities() expects parameter 1 to be string, array given(示例(代

前端js的数组的循环遍历 for / for of / for in / arr.forEach()