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

js中for...in 和 for...of 区别

for…in:

  • 遍历对象的属性:for…in 主要用于遍历对象的可枚举属性(包括继承的属性)。

  • 作用对象:对象、数组(虽然数组是对象的一种,但不推荐使用 for…in 遍历数组,因为它会遍历数组的索引,而不是数组的值)。

  • 迭代内容:返回的是对象的属性名或数组的索引。

let obj = {a: 1, b: 2, c: 3};for (let key in obj) {console.log(key); // 输出: a, b, c
}

for…of:

  • 遍历可迭代对象的值:for…of 主要用于遍历可迭代对象的值(如数组、字符串、Map、Set 等等)。
  • 作用对象:数组、字符串、Map、Set 等可迭代对象。for…of 不适用于普通对象。
  • 迭代内容:返回的是迭代对象中的值,而不是索引或属性名。
let arr = [10, 20, 30];for (let value of arr) {console.log(value); // 输出: 10, 20, 30
}

区别总结:

  • for…in 用于遍历对象的属性名,适合用于对象,而不适合数组,因为会返回数组的索引。
  • for…of 用于遍历可迭代对象的值,适合用于数组、字符串等集合类数据,而不适用于普通对象。

http://www.mrgr.cn/news/57688.html

相关文章:

  • 动态规划之简单多状态 dp 问题(下)
  • ESP32移植Openharmony设备开发---(6)Mutex互斥锁
  • mac用户使用Windows的方法:虚拟机、远程桌面和迷你主机
  • Linux的目录结构 常用基础命令(2)
  • 青少年编程能力等级测评CPA C++(三级)-试卷2
  • C 语言介绍及操作案例
  • java生成可执行文件
  • Java中的反射是什么?如何使用反射API?
  • 回归模型的增量学习的经典文章和方法
  • Docker原理|实战
  • globalAlpha:深入解析Canvas中的全局透明度
  • package,json 文件中依赖包的说明
  • 项目管理必备Git使用及关键指令(总体结构 + 必要步骤)教你如何协同开发
  • 微信小程序的日期区间选择组件的封装和使用
  • 如何使用IP代理优化亚马逊平台的操作体验
  • Get-WmiObject 命令使用
  • 为什么要进行母线槽测温?应用场景有哪些
  • Leetcode4:寻找两个正数数组中的中位数
  • 青训营 X 豆包MarsCode 技术训练营--小E的射击训练
  • “2+1拼购模式:重塑电商生态,引领消费新风尚“
  • 1024快乐
  • 1024程序员节,福利不说,今天咱就不加班了吧?
  • Python中利用mpld3实现交互式Matplotlib图表:动态可视化指南
  • 牛逼了!教你如何使用Pytest测试框架开展性能基准测试!
  • 【C++】C++的IO流
  • Lim测试平台,五步完成批量生成数据