//for与for...in的区别:
1、相同点:for
能遍历有固定长度和固定次数的数组等。for...in
也能遍历数组,但也能遍历对象。
for(var k in 数组名) //k=key(下标)
2、不同点:for
是根据数据的长度来执行次数,empty
(空)也会执行。而for..in
则会根据数据内容来执行次数,empty
会跳过不执行。
遍历数组或对象时优先使用for...in
//for each只做遍历,无返回值,打印是undifined,仅仅只是做遍历功能;
//map也可以用于数组遍历,但是可以返回一个数组,但是一定要return;
//for of 遍历数组,不能遍历对象
for let k of arr.keys() //获得键;
for let v of arr.values()//获得值;
for let[k,v] of arr.entries//同时获得键和值;
//for of 遍历对象
for (let k of object.keys(obj))//获得对象的键;
for (let v of object.values(obj)) //获得对象的值;
for (let v of object.entries(obj)) //获得对象的键和值;