美文网首页
for...in & for...of

for...in & for...of

作者: 恒昀 | 来源:发表于2021-09-12 20:18 被阅读0次

内容摘自 MDN:for...in & for...of

for...in:

for...in 以任意顺序遍历一个对象的 除Symbol 以外的 可枚举 属性

为什么用 for...in ?

for...in 是为遍历对象属性而创建的,不建议与数组一起使用,数组可以使用 Array.property.forEach() 和 for...of 

for...in 最常用的地方应该是调试,更方便检查对象属性。尽管对于处理存储数据,数组更实用些,但是在处理有 key-value 数据,需要检查其中的任何键是否为某值的情况时,还是推荐 for...in。

for...in 不应用于迭代一个关注索引顺序的 Array。

for... in 仅迭代自身的属性,而不考虑它的原型。如果只关注对象本身的属性,那么使用 getOwnPropertyNames() 或 hasOwnProperty() 来确定某属性是否是对象本身的属性。

for...of:

for...of 在 可迭代对象 (包括 Array Map Set String TypedArray arguments 对象等)上创建一个迭代循环,调用自定义迭代钩子,并为每一个不同属性的 值 执行语句。

关闭迭代器:对于 for...of 的循环,可以由 break, throw, continue, return 终止。在这些情况下迭代器关闭。

Notice:for...of 可迭代生成器,但是不能重用生成器,即使 for...of 提前终止,在退出循环之后,生成器关闭,并尝试再次迭代,不会有任何进一步的结果。

可以迭代 显示实现可迭代协议 的对象。

for...in & for...of 的区别

区别在于迭代方式,

for...in 语句以任意顺序迭代对象的 可枚举属性。

for...of 语句遍历 可迭代对象 定义要迭代的数据。

相关文章

  • JavaScript for...in和for...of的区别

    for...in for...of的区别 for...in 循环的是key; for...of 循环的是value...

  • for...in,for...of

    主要用来遍历数组和字符串,对象也可以 for...in方法针对的是有没有下标数组的情况,也适用于对象的循环遍历;f...

  • for...in、for...of

    for……in 循环遍历对象的属性和数组的键值(索引) 可以遍历自定义属性 会遍历数组所有可枚举的属性,包括原型 ...

  • for...in & for...of

    内容摘自 MDN:for...in[https://developer.mozilla.org/zh-CN/doc...

  • 第22周技术周报

    1. for...of VS for...in的用法 for...of是用于遍历实现了Iterator接口的元素 ...

  • es6常用特性(三)

    一、Iterator for...of与for...in的区别for...in只能获取对象的键名,不能直接获取键值...

  • 遍历方式盘点

    Array 数组遍历 while for forEach for...in for...of map 等...严格...

  • js 中遍历对象的方法

    包含原型链上的属性 for...in 不包含原型链上的属性 for...in for...of利用 for...o...

  • for...in & for...of

    for...in语句 以任意顺序遍历一个对象的可枚举属性。对于每个不同的属性,语句都会被执行。 描述for... ...

  • for, forEach, for...in, for...of

    日期:2019 年 11 月 26 日 几种循环方式的差异比较 我们平常在代码中经常会用到 for , forEa...

网友评论

      本文标题:for...in & for...of

      本文链接:https://www.haomeiwen.com/subject/jcrtgltx.html