当前位置: 首页 > news >正文

JS-- for...in和for...of

1,for...in 

用于遍历对象的可枚举属性(包括原型链上的),返回的是属性名(字符串)。

也可以遍历数组,但返回的是索引(字符串类型),不推荐用于数组。

2,for..of

用于遍历可迭代对象(如数组、字符串、Map、Set等),返回的是每一项的值。

不能直接用于普通对象(非可迭代对象)。

3,举例:

3.1  for...in遍历对象。不想要遍历原型链上的属性和方法通过obj.hasOwnProperty过滤掉

for (const key in data) {if (data.hasOwnProperty(key)) {const value = data[key];if (value !== undefined) {items.push(`"${key}":${stringify(value)}`);}}
}

3.2 用for...of替代for...in,那么通过Object.keys(obj),拿到所有的对象的key

你可以用 for (const key of Object.keys(obj)) 替换 for...in,这样更安全,只遍历自有属性。

for (const key of Object.keys(data)) {const value = data[key];if (value !== undefined) {items.push(`"${key}":${stringify(value)}`);}
}

for...in 用于遍历对象的属性名,返回字符串(包括原型链上的)。

for...of 用于遍历可迭代对象的值,不能直接用于普通对象。

http://www.xdnf.cn/news/899263.html

相关文章:

  • 在WPF项目中集成Python:Python.NET深度实战指南
  • 如何更改默认 Crontab 编辑器 ?
  • 紫光同创FPGA系列实现Aurora 8b/10b协议
  • 宝塔think PHP8 安装使用FFmpeg 视频上传
  • 第J3-1周:DenseNet算法 实现乳腺癌识别
  • 11.RV1126-ROCKX项目
  • 深入浅出多路归并:原理、实现与实战案例解析
  • 前端对WebSocket进行封装,并建立心跳监测
  • 【MATLAB去噪算法】基于ICEEMDAN联合小波阈值去噪算法
  • Linux(线程控制)
  • 佰力博科技与您探讨材料介电性能测试的影响因素
  • 机器学习与深度学习14-集成学习
  • 【Python 算法零基础 4.排序 ⑪ 十大排序算法总结】
  • 【数据结构】_排序
  • Ubuntu 系统静态网络配置
  • ansible和saltstack安装和简单操作
  • AWS API Gateway配置日志
  • 在SpringBoot中使用AWS SDK实现邮箱验证码服务
  • React项目的状态管理:Redux Toolkit
  • @Transactional注解失效的原因有哪些?
  • Javascript 编程基础(5)面向对象 | 5.2、原型系统
  • java教程笔记(十一)-泛型
  • C语言字符数组输入输出方法大全(附带实例)
  • Axios请求超时重发机制
  • 亚矩阵云手机实测体验:稳定流畅背后的技术逻辑​
  • 面向无人机海岸带生态系统监测的语义分割基准数据集
  • Cursor 1.0正式推出:全面解析你的AI 编程助手
  • 湖北理元理律师事务所:企业债务重组的风险控制方法论
  • 办公提效的AI免费工具使用感悟
  • 大量企业系统超龄服役!R²AIN SUITE 一体化企业提效解决方案重构零售数智化基因