位置: IT常识 - 正文

for of 和 for in 的区别(for of 与for in)

编辑:rootadmin
for of 和 for in 的区别 for of 和 for in 的区别1.共性2.区别1.两者对比例子(遍历对象)2.两者对比例子(遍历数组)3.特点①. ``for in`` 特点①. ``for of`` 特点1.共性

推荐整理分享for of 和 for in 的区别(for of 与for in),希望有所帮助,仅作参考,欢迎阅读内容。

for of 和 for in 的区别(for of 与for in)

文章相关热门搜索词:for of与for in的区别,for of和for in 和foreach,for 与for in,for of和for in 和foreach,for 与for in,forof和forin的区别js,forof和forin的区别,以下说法正确的是,forof和forin的区别,内容如对您有帮助,希望把文章链接给更多的朋友!

for of 和 for in都是用来遍历的属性

2.区别for...in 语句用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。for in得到对对象的key或数组,字符串的下标for of和forEach一样,是直接得到值for of不能用于对象1.两者对比例子(遍历对象)const obj = { a: 1, b: 2, c: 3 } for (let i in obj) { console.log(i) //输出 : a b c } for (let i of obj) { console.log(i) //输出: Uncaught TypeError: obj is not iterable 报错了 }

说明: for in 和 for of 对一个obj对象进行遍历,for in 正常的获取了对象的 key值,分别打印 a、b、c,而 for of却报错了。

2.两者对比例子(遍历数组) const arr = ['a', 'b', 'c'] // for in 循环 for (let i in arr) { console.log(i) //输出 0 1 2 } // for of for (let i of arr) { console.log(i) //输出 a b c }3.特点①. for in 特点for … in 循环返回的值都是数据结构的 键值名(即下标)。遍历对象返回的对象的key值,遍历数组返回的数组的下标(key)。for … in 循环不仅可以遍历数字键名,还会遍历原型上的值和手动添加的其他键。特别情况下, for … in 循环会以看起来任意的顺序遍历键名for in 的 常规属性和 排序属性 在ECMAScript规范中定义了 「数字属性应该按照索引值⼤⼩升序排列,字符串属性根据创建时的顺序升序排列。」在这⾥我们把对象中的数字属性称为 「排序属性」,在V8中被称为 elements,字符串属性就被称为 「常规属性」, 在V8中被称为 properties。function Foo() { this[100] = 'test-100' this[1] = 'test-1' this["B"] = 'bar-B' this[50] = 'test-50' this[9] = 'test-9' this[8] = 'test-8' this[3] = 'test-3' this[5] = 'test-5' this["A"] = 'bar-A' this["C"] = 'bar-C'}var bar = new Foo()for(key in bar){ console.log(`index:${key} value:${bar[key]}`)}//输出:index:1 value:test-1index:3 value:test-3index:5 value:test-5index:8 value:test-8index:9 value:test-9index:50 value:test-50index:100 value:test-100index:B value:bar-Bindex:A value:bar-Aindex:C value:bar-C

总结一句: for in 循环特别适合遍历对象。

①. for of 特点for of 循环用来获取一对键值对中的值,而 for in 获取的是 键名一个数据结构只要部署了 Symbol.iterator 属性, 就被视为具有 iterator接口, 就可以使用 for of循环。for of 不同与 forEach, 它可以与 break、continue和return 配合使用,也就是说 for of 循环可以随时退出循环。
本文链接地址:https://www.jiuchutong.com/zhishi/299567.html 转载请保留说明!

上一篇:MySQL-触发器(mysql触发器创建)

下一篇:自动驾驶数据集(一):KITTI数据集介绍(自动驾驶数据集 mev)

  • 个税年度汇算清缴开始时间
  • 进口增值税如何入账
  • 中级税务师是什么
  • 主管税务机关是否参与清算
  • 工程项目结算流程图
  • 处置投资性房地产的损益怎么算
  • 负数增长到正数的例子
  • 先付款后开票是预付吗
  • 税费返还如何处理
  • 哪些会计科目借方记增加
  • 政府发的补助金用不用交税
  • 建筑业出售废旧电脑取的收入如何申报
  • 收到认缴实收资本怎么做账务处理?
  • 电子商业承兑汇票
  • 研发部门属于哪个会计科目
  • 已认证已抵扣的发票对方要寄回吗
  • 土地使用权出让和划拨有什么区别
  • 承租人转租需要交税吗
  • 企业所得税报表模板
  • 案例分析关于团员青年的思想困惑疏导和成长问题释疑
  • 机票退票手续费为什么这么贵
  • 交叉持股的合并财务报表
  • 生产企业低值高报骗税
  • 预计产品质量保证损失是什么意思
  • 去年的管理费用怎么冲
  • 电脑怎么安装双显卡
  • 机票行程单可以报销用吗
  • 承兑交单是什么的一种
  • 房地产开发企业分为几个等级
  • deepin怎么删除账户
  • 购置资产是什么财务活动
  • php 字符串函数
  • 预付的房屋租赁费账务如何处理
  • imgrd.exe是什么
  • 高薪技术企业研发项目合同范本最新
  • 企业所得税退税流程
  • php实现和工作原理
  • 强制划缴税款
  • TypeError: Cannot read properties of null (reading ‘insertBefore‘) vue项目报错
  • Maximum call stack size exceeded错误
  • 工业用地被政府征收怎么补偿
  • 非货币性资产交换补价大于25%的会计处理
  • laravel enum
  • antdesign vue pro
  • 进项税不得抵扣的意思
  • php的implode
  • 低代码框架开发
  • 销售蔬菜企业怎么做
  • 发票验证不过去会怎么样
  • 自由会计服务类工作者
  • 销项税用转出吗
  • 专票信息技术服务费
  • 从内地到香港坐飞机到国内
  • 小额贷款在银行需要什么条件
  • 关于餐饮行业
  • 物业公司预收的物业费怎么做账
  • 进项税额转出多了怎么调整
  • 应交税费进项税额转出是什么意思
  • 收派服务与快递服务区别
  • 营业收入和主营业务收入分别在哪看
  • win8系统安装软件在桌面找不到
  • windows8安装程序
  • slserve.exe - slserve是什么进程
  • vi编辑器使用教程
  • win7隐藏文件怎么调出来
  • windows7 usb
  • cocos2dx schedule
  • 关于我和鬼变成家人的那件事
  • Android之Notification-android学习之旅(二)
  • python2.7.11
  • java arraysort
  • java教程
  • python动态加载py
  • 什么叫开源库
  • jquery22插件网
  • python win10
  • 河北税务官网电子税务局
  • 专项附加扣除当月填报何时生效
  • 调查问卷的背景资料怎么写
  • 审计报告的数据真实性
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设