位置: 编程技术 - 正文

JavaScript的instanceof运算符学习教程

编辑:rootadmin

推荐整理分享JavaScript的instanceof运算符学习教程,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

语法

参数object:要检测的对象.constructor:某个构造函数

描述:instanceof 运算符用来检测 constructor.prototype 是否存在于参数 object 的原型链上。

需要注意的是,如果表达式 obj instanceof Foo 返回true,则并不意味着该表达式会永远返回ture,因为Foo.prototype属性的值有可能会改变,改变之后的值很有可能不存在于obj的原型链上,这时原表达式的值就会成为false。另外一种情况下,原表达式的值也会改变,就是改变对象obj的原型链的情况,虽然在目前的ES规范中,我们只能读取对象的原型而不能改变它,但借助于非标准的__proto__魔法属性,是可以实现的。比如执行obj.__proto__ = {}之后,obj instanceof Foo就会返回false了。

instanceof和多全局对象(多个frame或多个window之间的交互)

JavaScript的instanceof运算符学习教程

在浏览器中,我们的脚本可能需要在多个窗口之间进行交互。多个窗口意味着多个全局环境,不同的全局环境拥有不同的全局对象,从而拥有不同的内置类型构造函数。这可能会引发一些问题。比如,表达式 [] instanceof window.frames[0].Array 会返回false,因为 Array.prototype !== window.frames[0].Array.prototype,因此你必须使用 Array.isArray(myObj) 或者 Object.prototype.toString.call(myObj) === "[object Array]"来判断myObj是否是数组。

示例instanceof的常规用法是判断a是否是b类型:

instanceof还能判断父类型:

Child构造函数继承自Father,实例a是Child构造的无疑,但是为何也是Father的实例呢?其实instanceof运算符的内核可以简单地用以下代码描述:

简单地说,a如果是b的实例,那么a肯定能使用b的prototype中定义的方法和属性,那么用代码表示就是a的原型链中有b.prototype取值相同的对象,于是顺着a的原型链一层层找就行了。

另外值得注意的是,String Number Boolean 以及Function等都是函数,而函数则是统一由Function构造而来的,so它们和任何单纯的函数一样,能用Function上的原型属性:

最后来简单讲讲最开始的两道题吧。

老生常谈JavaScript数组的用法 JavaScript数组简介JavaScript中的数组与其他语言中的数组是不同的,主要体现在:数组中存储的各项可以是不同类型的数据数组的大小是动态变化的,当新

浅谈javascript基础之客户端事件驱动 我们知道,面向对象发展起来后,一夜之间,几乎所有的语言都能基于对象了,JavaScript也是基于对象的语言。用户在浏览器上的行为称作事件,之后引发

javaScript知识点总结(必看篇) 1、javaScript的概念:是一种表述语言,也是一种基于对象(Object)和事件驱动(EventDriven)的,安全性好的脚本语言,运行在客户端,从而减轻服务器端的负担

标签: JavaScript的instanceof运算符学习教程

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

上一篇:实例讲解JavaScript中instanceof运算符的用法(实例讲解命局与大运流年作用)

下一篇:老生常谈JavaScript数组的用法(老生常谈的近义词)

  • 企业可否自行决算利润
  • 合伙企业当年盈亏怎么算
  • 个体户收现金可以开发票吗
  • 建设工程劳务分包的规定
  • 每股收益无差别点计算公式怎么解
  • 转出未交增值税是借方还是贷方
  • 企业股东分红所得税税率表
  • 预收款 交税
  • 预付款什么时候确认收入
  • 发行长期债券会计分录例题
  • 企业可根据实际情况随意设置会计科目
  • 专用发票报销时限
  • 退税勾选的发票账务处理
  • 企业所得税上个季度赔钱下个季度挣钱
  • 年终奖需要计入工资交社保吗
  • 房屋修缮费交增值税吗
  • 关联企业之间的咨询费
  • 企业筹建期间的广告费和业务宣传费
  • 纳税人不得汇总开具发票
  • 股权投资涉税问题
  • 企业的税收筹划
  • 进口商品关税调整
  • 企业支付微信认证怎么弄
  • 怎么清除更新记录
  • 劳务报酬所得包括哪些?与工资薪金所得的区别?
  • googlechrome谷歌浏览器
  • web投票系统源码
  • 桌面图标归纳
  • kb4580419更新
  • win10显示我的电脑
  • 装饰工程公司主要做什么
  • 为什么增值税最后有余额附加税没有
  • 运输发票税金怎么算
  • 怎么解锁城堡上空
  • 凯丽温泉可以做spa
  • 深入理解php中的数字
  • diffusion扩散模型训练时间
  • 分公司开票总公司收款怎么做账
  • python中的列表和元祖有什么区别
  • sql语句的查询语句
  • 赠品没有收到
  • 各部门和单位按照国家有关规定收取或取得
  • 公司股东的权利和义务有哪些
  • 初级会计实务中国财政经济出版社
  • 计提合同印花税怎么做账
  • 劳务税可以抵扣企业税比例
  • 职工工资如何计算天数
  • 应收账款确认无法收回,确认为坏账损失
  • 应收账款转营业外支出
  • 新成立的公司发朋友圈文案
  • 作废发票丢失怎么补办
  • 房地产开发企业资质管理规定
  • 总账设置包括哪些内容
  • window怎么操作
  • winxp开机界面后老重启
  • windows xp搜索功能在哪里
  • wcu.exe是什么
  • win8开始屏幕设置
  • win7系统桌面快捷键
  • win7无法删除d盘
  • windows 10预览版
  • windows7开机显示错误恢复进不去
  • Win10预览版桌面图标和任务栏不翼而飞怎么办?
  • opengl读取obj文件
  • ftql
  • opengl 模型
  • ExtJS扩展 垂直tabLayout实现代码
  • 作用
  • css旋转木马
  • android图片透明度怎么设置
  • android 动画分类
  • 深入理解两个大计重要论断心得体会
  • ajax+node+request爬取网络图片的实例(宅男福利)
  • 兖州宁德新能源官网首页
  • 国家税务总局公告2017年第21号
  • 交了增值税还用交税吗
  • 一级稽查体制
  • 创新税务稽查方案
  • 食堂增值服务有哪些
  • 基层税务稽查具体内容
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设