位置: 编程技术 - 正文

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数组的用法(老生常谈的近义词)

  • 核定征收企业所得税率是多少
  • 员工自己全额承担社保可以在个税申报吗
  • 个人所得税汇算清缴情况报告
  • 发票章坏了能自己刻吗
  • 财政补助结转会计处理
  • 小规模纳税人减征增值税
  • 什么情况下增值税进项税额要转出
  • 进行利润分配时必须遵循的原则
  • 房地产退房款会计分录
  • 资本公积科目余额能出现小数吗
  • 2021 上海房产税
  • 如何理解出口退税政策
  • 生产企业电费要不要计提?
  • 进项税额转出其他应收款
  • 本月没有发生额本月合计
  • 发票抵扣后对方恶意冲红
  • 管理费用劳务费现金流
  • 餐饮业收入的会计分录及摘要
  • 商贸流通企业的构成
  • 电脑c盘变红了怎么回事
  • 食堂充值管理制度
  • 出差的住宿费较高的原因
  • 超市一般纳税人账务处理
  • 怎么给分区
  • 其他应付款年末借方余额
  • nerosvc.exe - nerosvc是什么进程 有什么用
  • win10 待机时间
  • 领用材料已抵扣进项税
  • 安斯海滩上的角眼沙蟹,塞舌尔普拉兰岛 (© Ingo Schulz/Offset by Shutterstock)
  • 接受股权投资账务处理
  • 图书管理系统的软件结构图
  • 支付货物运费计入什么科目
  • 小规模纳税人增值税月末处理
  • 税控盘没交年费会怎么办
  • 车船使用税代征手续费
  • python3中rindex用法
  • python中字符串转数字函数
  • phpcms api
  • 长期资产包含哪些
  • 经营许可证需要多久时间
  • 小微企业增值税优惠政策最新2023
  • 工地会计内账
  • mysql数据库死锁
  • 个贷系统平账专户a户为啥扣钱
  • 高新技术企业研发费用占比要求
  • 红字冲销发票流程
  • 教育培训机构的老师可以评职称吗
  • 住宿费开专票怎么做账
  • 汇兑收益怎么做分录
  • 电子记录表怎么填写
  • 小规模免增值税吗
  • 购入原材料结转成本怎么算
  • 年初资产总额怎么算
  • sql server数据库查询语句
  • windows开机提示无法登录到你的账户
  • linux 详解
  • fedora os
  • windows的使用
  • 苹果mac怎么查看运行数据
  • win10无线网络不见了只显示飞行模式
  • xp系统安装版
  • gwsystemservice.exe是什么进程 有什么作用 gwsystemservice进程查询
  • 一岁的宝宝可以喝枸杞水吗
  • windos8怎么样
  • win7不识别大于4T的盘
  • node.js安装后自带哪个工具
  • apk反编译是什么意思
  • unity设置窗口位置
  • shell监控端口状态
  • python字典有什么用
  • unity引擎工具
  • js 分页插件
  • jquery中有哪些dom操作?
  • Android音乐播放器评论功能怎么实现
  • python怎么自定义函数
  • 村级公益性支出是什么
  • 企业所得税季度申报表填报说明
  • 陕西个体户免税政策
  • 国家电子税务局江西省电子税务局
  • 分类编码方案可以在什么中修改
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设