for of和for in的区别,Array Iterator是个啥意思

来源:7-3 新的方法

王文辉

2021-02-20 18:10:46

let arr=[11,22,33,44,55];

for (let i of arr.keys()) {

console.log(i)

}

for (let i of arr.values()) {

console.log(i)

}

console.log(arr.keys() //Array Iterator,用for in则无法取到值

);

这里如果用for in则无法遍历到值,控制台不输出,我猜测是Array Iterator这个导致的,这个到底是什么

说说我对for in和of 的理解,for of一般用来遍历数组,for in遍历对象,但遍历的时候发现使用两个都可以遍历到,所以我比较喜欢用for in,理解的对吗?

写回答

1回答

好帮手慕星星

2021-02-20

同学你好,问题解答如下:

1、Array Iterator是数组遍历器,Array中默认存在的。因为keys()获取的是键值,而数组中没有键值,所以获取的相当于数组索引,然后输出

http://img.mukewang.com/climg/6030e5c7091bf5af02610187.jpg

所以是拿不到数组项的,这里便于遍历器了解一下即可。

2、for of一般用来遍历数组,for in遍历对象,没有问题,同学按照自己的习惯来使用就好。

祝学习愉快!

0

0 学习 · 10739 问题

查看课程