位置: 编程技术 - 正文

基于JavaScript实现继承机制之构造函数方法对象冒充的使用详解(javascript例题)

编辑:rootadmin

继承的方式ECMAScript 实现继承的方式不止一种。这是因为 JavaScript 中的继承机制并不是明确规定的,而是通过模仿实现的。这意味着所有的继承细节并非完全由解释程序处理。作为开发者,你有权决定最适用的继承方式。最原始的继承实现方式就是对象冒充,下面着重介绍该方法。

对象冒充对象冒充实现继承的核心其实依赖于在函数环境中使用 this 关键字。其原理如下:构造函数使用 this 关键字给所有属性和方法赋值(即采用类声明的构造函数方式)。因为构造函数只是一个函数,所以可使 ClassA 构造函数成为 ClassB 的方法,然后调用它。ClassB 就会收到 ClassA 的构造函数中定义的属性和方法。例如,用下面的方式定义 ClassA 和 ClassB:关键字 this 引用的是构造函数当前创建的对象。不过在这个方法中,this 指向的所属的对象。这个原理是把 ClassA 作为常规函数来建立继承机制,而不是作为构造函数。如下使用构造函数 ClassB 可以实现继承机制:在这段代码中,为 ClassA 赋予了方法 newMethod(请记住,函数名只是指向它的指针)。然后调用该方法,传递给它的是 ClassB 构造函数的参数 sColor。最后一行代码删除了对 ClassA 的引用,这样以后就不能再调用它。

所有新属性和新方法都必须在删除了新方法的代码行后定义。否则,可能会覆盖超类的相关属性和方法:为证明前面的代码有效,可以运行下面的例子:对象冒充可以实现多重继承有趣的是,对象冒充可以支持多重继承。例如,如果存在两个类 ClassX 和 ClassY,ClassZ 想继承这两个类,可以使用下面的代码:这里存在一个弊端,如果存在两个类 ClassX 和 ClassY 具有同名的属性或方法,ClassY 具有高优先级。因为它从后面的类继承。除这点小问题之外,用对象冒充实现多重继承机制轻而易举。

由于这种继承方法的流行,ECMAScript 的第三版为 Function 对象加入了两个方法,即 call() 和 apply()。后来很多衍生出来的实现继承的方法其实也是基于call() 和 apply()来实现的。

推荐整理分享基于JavaScript实现继承机制之构造函数方法对象冒充的使用详解(javascript例题),希望有所帮助,仅作参考,欢迎阅读内容。

基于JavaScript实现继承机制之构造函数方法对象冒充的使用详解(javascript例题)

文章相关热门搜索词:基于JAVASCRIPT实现的可视化工具是,基于JAVASCRIPT实现的可视化工具是,基于javascript的毕业设计选题,javascript运用,基于javascript的毕业设计,基于JAVASCRIPT实现的可视化工具是,基于javascript的毕业设计,基于JAVASCRIPT实现的可视化工具是,内容如对您有帮助,希望把文章链接给更多的朋友!

你必须知道的JavaScript 中字符串连接的性能的一些问题 而JavaScript的核心是ECMAScript。与其他语言类似,ECMAScript的字符串是不可变的,即它们的值不能改变。请考虑下面的代码:varstr="hello";str+="world";实际上,

你必须知道的JavaScript 变量命名规则详解 变量命名还应遵守以下某条著名的命名规则:著名的变量命名规则Camel标记法首字母是小写的,接下来的字母都以大写字符开头。例如:vartestValue=0,second

基于JavaScript 声明全局变量的三种方式详解 JS中声明全局变量主要分为显式声明或者隐式声明下面分别介绍。声明方式一:使用var(关键字)+变量名(标识符)的方式在function外部声明,即为全局变

标签: javascript例题

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

上一篇:基于JavaScript实现继承机制之调用call()与apply()的方法详解(js基于什么)

下一篇:你必须知道的JavaScript 中字符串连接的性能的一些问题(你必须知道的最新婚姻法)

  • 增值税开票软件怎么升级最新版
  • 税务师职业考试
  • 向银行借款存入银行会引起
  • 去年的财务报表可以更正申报吗
  • 中标服务费可否开发票
  • 飞机发票和行程单可以一起开吗
  • 企业所得税年报过了申报期还能修改吗
  • 房租不能开发票怎样入账
  • 企业的党员活动有哪些
  • 中外合资房地产公司
  • 营改增服务
  • 融资融券与普通证券交易的区别体现在
  • 年化收益率的计算公式
  • 职工福利费计提比例一般是多少
  • 企业借个人款该交税吗
  • 餐费专票认证了怎么办
  • 冬虫夏草开票什么税率
  • 个体经营户如何开电子发票
  • 建筑行业小规模企业所得税税率
  • 旅行社差额征税增值税申报表怎么填
  • 房地产企业开发资质查询
  • 税务领取发票后怎么操作
  • 子公司评估增值 出售股权
  • 税费是哪个会计科目?
  • 地毯属于什么类别垃圾分类
  • 转让旧固定资产怎么做账
  • 取得海运费发票怎么入账
  • 出售无形资产是什么科目
  • 小规模减免的增值税怎么记账
  • 如何查询苹果手机充电次数
  • 苹果官网iPhone12
  • linux命令行怎么用
  • kb4586819更新
  • 补充协议是否缴纳印花税
  • 房屋租赁费如何结转成本
  • xcsp_eclib.dll
  • 最小的摄像头是多大
  • PHP:ob_iconv_handler()的用法_iconv函数
  • 视同销售收入税法处理
  • 影响安全库存的因素包括
  • 前端埋点sdk
  • 其他综合收益的构成项目如何
  • 新政府会计制度固定资产核算
  • 如何理解虚拟存储的虚拟
  • Web 1.0、Web 2.0 和 Web 3.0 之间的比较
  • python字符串如何提取单词
  • 阿里规则官方头条
  • 财政总预算会计的主体是
  • js 自定义类型
  • 存货资产减值损失借贷方向
  • 服务业按什么结算工资
  • 其他应收款财务报表取数
  • 付款后退货
  • 外贸出口企业的收入交增值税吗
  • 跌价准备如何入库
  • 营业外支出什么科目借贷方向
  • 投资性房地产用三栏式吗
  • 企业清算状态还要报税吗
  • 水电费收据可以写一张上吗
  • 车辆折旧费法律支持吗
  • mysql输入中文显示乱码
  • win10系统崩溃怎么修复开不了机
  • rtm平台全称
  • ubuntu安装ubuntu-desktop
  • iphone os
  • centos备份文件夹
  • ksysslim.exe
  • win8系统怎么设置开机启动项
  • Win7系统打印机共享无法保存打印机设置0x000006d9
  • win8删除文件很慢
  • win8怎么禁止更新
  • glibc2.14安装
  • 鼠标的指针
  • android ui线程和主线程的区别
  • node.js 开发工具
  • c#委托实现的步骤
  • Python通过行和列提取数据
  • 落实落地是什么意思
  • 大米可以抵扣增值税吗
  • 云南税务总局官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设