js循环及for-in , for-of的区别
2024-10-06 13:52:17
循环
字符串遍历:可通过for-of遍历字符串
for-in:遍历对象自身可继承可枚举属性
Object.keys():返回对象自身可枚举属性的键组成的数组
Object.getOwnPropertyNames():返回对象自身可继承可枚举非枚举属性的键组成的数组
Object.getOwnPropertySymbols():返回对象Symbol属性的键组成的数组
Reflect.ownKeys():返回对象自身可继承可枚举非枚举Symbol属性的键组成的数组
ForOf循环
- 定义:调用Iterator接口产生遍历器对象(for-of内部调用数据结构的Symbol.iterator())
- 遍历字符串:for-in获取索引,for-of获取值(可识别32位UTF-16字符)
- 遍历数组:for-in获取索引,for-of获取值
- 遍历对象:for-in获取键,for-of需自行部署
- 遍历Set:for-of获取值 => for (const v of set)
- 遍历Map:for-of获取键值对 => for (const [k, v] of map)
- 遍历类数组:包含length的对象、Arguments对象、NodeList对象(无Iterator接口的类数组可用Array.from()转换)
- 计算生成数据结构:Array、Set、Map
- keys():返回遍历器对象,遍历所有的键
- values():返回遍历器对象,遍历所有的值
- entries():返回遍历器对象,遍历所有的键值对
- 与for-in区别
- 有着同for-in一样的简洁语法,但没有for-in那些缺点、
- 不同于forEach(),它可与break、continue和return配合使用
- 提供遍历所有数据结构的统一操作接口
最新文章
- C语言中链表任意位置怎么插入数据?然后写入文件中?
- c里面的fflush函数
- XML与JSON的对比
- MATLAB mex文件
- Python3 学习第十弹: 模块学习三之数字处理
- Oracle RAC OCR 与健忘症
- SQL数据库增删改查基本语句
- Linux环境进程间通信(二): 信号(上)
- SMB/CIFS协议解析
- html&;css笔记(2)
- java小白之面向对象
- Python中的单例模式——装饰器实现剖析
- python获取两个日期间的工作日
- ASP.NET MVC下使用AngularJs语言(八):显示html
- Haproxy Mysql cluster 高可用Mysql集群
- DownloadProvider源码解析——与Volley对比
- 关于extern ";C";(详细剖析)
- mysql的联表删除
- Alpha阶段事后诸葛分析
- linux 设置 亮度
热门文章
- java获取两个日期之间的所有日期
- Mysql迁移由于字符集导致乱码的数据
- 123457123456#0#-----com.yuming.HitMouse01--前拼后广--幼儿打地鼠游戏
- iOS-NSNotification本地推送、远程推送
- 【计算机视觉】detection/region/object proposal 方法综述文章
- php控制访问人数的方法
- mysql5.6版本数据库向Mysql5.7版本的数据库更新数据
- xmind常用快捷键
- springboot集成elk 三:springboot + Elasticsearch Rest-Client
- 推荐:【视频教程】ASP.NET Core 3.0 入门