位置: 编程技术 - 正文

Javascript学习笔记之 对象篇(四) : for in 循环(javascript学习指南)

编辑:rootadmin

推荐整理分享Javascript学习笔记之 对象篇(四) : for in 循环(javascript学习指南),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript教程推荐知乎,javascript入门教程,javascript入门教程,javascript学习指南,javascript怎么学,javascript基础笔记,javascript基础笔记,javascript教程推荐知乎,内容如对您有帮助,希望把文章链接给更多的朋友!

先上范例:

这里我们要注意两点,一是 for in 循环会忽略 enumerable 设置为 false 的属性。例如一个数组的 length 属性。第二是,由于 for in 会遍历整个原型链,所以当原型链过长时,会对性能造成影响。

enumerable 是个很陌生的词汇,实际上,你很难在 javascript 中发现它的影子,而它实际上也是作者从 ruby 中借鉴而来的。创建 enumerable 的目的不是为了独立使用,而是采用“混用”的方式,而 Prototype 中很多方法都混用了 enumerable,所以它可以说是 prototype 的奠基石。这里不做详细介绍,详细内容可以参考 - Enumerable。由于我们没法改变 for in 循环本身的行为,所以我们只能采取其他方法来过滤掉那些不希望出现在循环内的属性,通过 《Javascript学习笔记之对象篇(三) : hasOwnProperty》 我们知道 hasOwnProperty 方法是可以做到这一点的。

Javascript学习笔记之 对象篇(四) : for in 循环(javascript学习指南)

使用 hasOwnProperty 过滤

仍然使用上个例子:

这是唯一正确的写法,由于我们实用了 hasOwnProperty 方法,所以这次只输出 moo。如果不适用 hasOwnProperty 方法,那么当 Object.prototype 扩展时,就会出现错误。现在很多框架都会选择从 Object.prototype 扩展方法,所以我们使用这些框架时,如果使用没有用 hasOwnProperty 过滤的 for in 循环时就会遇到问题。

总结

建议养成 hasOwnProperty 过滤属性的好习惯,不要对运行环境做任何假设,也无论原生的原型对象是否被扩展。

Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式 函数声明functionfoo(){}函数foo将会在整个程序执行前被hoist(提升),因此它在定义foo函数的整个scope(作用域)中都是可用的。即使在函数定义之前调用它也

Javascript学习笔记之 函数篇(二) : this 的工作机制 全局作用域下this;当在全局作用域中使用this,它指向全局对象。这里详细介绍下全局对象:全局对象(Globalobject)是在进入任何执行上下文之前就已经创建

Javascript字符串对象的常用方法简明版 vara="abcDEfGgdefgasdf";document.write("原始:"+a+"br/")document.write("粗体:"+a.bold()+"br/");document.write("大号:"+a.big()+"br/");document.write("斜体:"+a.italics()+"br/");document.write

标签: javascript学习指南

本文链接地址:https://www.jiuchutong.com/biancheng/370165.html 转载请保留说明!

上一篇:Javascript学习笔记之 对象篇(三) : hasOwnProperty(javascript要怎么学)

下一篇:Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式(javascript教程推荐知乎)

  • 企业招用残疾人比例
  • 个体工商户所得税核定征收2023
  • 关联企业的判定标准
  • 申领的发票多久过期
  • 专票上不小心印上字了,怎么去除
  • 在建工程的范围
  • 出口货物发生退运是征税还是免税
  • 收到社保生育津贴摘要怎么写
  • 股东退股如何清算表格
  • 管理费用科目代码
  • 商业银行税前收益率
  • 房产评估费会计分录
  • 学校付学生的现金奖励入什么科目
  • 固定资产发票未到怎么提折旧
  • 基建账的年终结转
  • 库存半成品属于什么会计科目
  • 商业汇票概念股票
  • 做企业所得税汇算清缴前需要准备什么资料
  • 如何选一般纳税人还是小规模纳税人合作?
  • 税务局申请发票
  • 个人营业税是什么意思
  • 包工不包料会计处理
  • 申报增值税附表二代不出数据
  • 水费适用税率
  • 增值税发票查验平台官网网络异常
  • 办税人员需要会计证吗
  • 加工费的增值税税率是多少
  • 员工个人所得税申报方式选哪个
  • 短期借款利息的处理
  • 增值税销项税额抵减账务处理
  • 预提费用冲销需要重新计提吗
  • 没有一般纳税人证明怎么办
  • 企业年金基金缴费必须归集到受托财产托管账户
  • 外籍人员个税免征吗
  • 回迁房?
  • 制造业工资计提
  • php大于等于号怎么打
  • smart模板教程
  • linux suid
  • 应付职工薪酬属于什么会计科目
  • 上传图片php
  • python 进程pid
  • 出口退税超期了怎么办
  • 个税汇算要清缴么
  • 商家的这些行为对消费者的购买行为有什么影响
  • 其他权益工具投资是什么意思
  • 跨年度冲收入,冲成本分录如何做?
  • 实收资本会计处理方法
  • 暂估入账应该如何操作
  • 企业广告费以后会涨吗
  • 专用发票不抵扣联可以当普票用吗?
  • 代收代缴的水电费怎么开票
  • 选用劳务派遣人员
  • 债务人对债权人享有
  • 企业主营业务收入分录
  • 农产品计算抵扣税率 最新
  • 政府补贴递延收益的摊销时间
  • 税票是什么意思
  • 特许权使用费税前扣除
  • 深度操作系统中的生活服务类软件有
  • 系统盘gpt转mbr
  • Ubuntu软件源更新
  • mac登录apple id一直转圈
  • window10耳机有电流
  • react native 应用
  • 学javascript可以干什么工作
  • android应用开发基础
  • 批处理 修改文件名
  • android基于什么操作系统
  • offset function
  • jquery控制样式
  • jQuery EasyUI datagrid在翻页以后仍能记录被选中行的实现代码
  • 如何使用jquery实现点击按钮弹出一个对话框
  • 湖北商铺契税2021年新规
  • 河南税务局退税流程
  • 划拨土地是否可以出租的法律规定
  • 担保机构和银行的区别
  • 法治税务演讲稿结尾
  • 机动驳船是什么
  • 中山税务如何预约
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设