for of、for in、forEach、map、Object.keys、Object.values、Object.entries 区别

发布于 2023-08-02 12:37:46 字数 1040 浏览 38 评论 0

for of

• 可以中断循环。
• 具有 iterator 接口,就可以用 for...of 循环遍历它的成员(属性值)。
• 循环调用遍历器接口,数组的遍历器接口只返回具有数字索引的属性。
• 无法遍历 不可迭代对象(如普通 json 的 object)
• 对于普通的对象,for...of 结构不能直接使用,会报错,必须部署了 Iterator 接口后才能使用。
• 可以使用的范围包括数组、Set 和 Map 结构、某些类似数组的对象、Generator 对象,以及字符串。
• 可迭代对象包括: Array,Map,Set,String,TypedArray,arguments 等等

for in

• 可以中断循环。
• 遍历对象自身的和继承的可枚举的属性, 不能直接获取属性值。

forEach

不能中断
只能遍历数组
可以修改原数组
没有返回值(或认为返回值是 undefined)。

map

不能中断
只能遍历数组
可以修改原数组,返回值是修改后的数组。

Object.keys

Object.values

Object.entries

参考链接
https://es6.ruanyifeng.com/
https://blog.csdn.net/shangyanaf/article/details/80415236
https://www.jianshu.com/p/c43f418d6bf0

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

情绪

暂无简介

0 文章
0 评论
23 人气
更多

推荐作者

qq_E2Iff7

文章 0 评论 0

Archangel

文章 0 评论 0

freedog

文章 0 评论 0

Hunk

文章 0 评论 0

18819270189

文章 0 评论 0

wenkai

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文