位置: 编程技术 - 正文

基于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 中字符串连接的性能的一些问题(你必须知道的最新婚姻法)

  • 增值税加计扣除怎么做账
  • 为什么缴纳税
  • 建设工程劳务分包的规定
  • 弥补以前年度亏损金额从哪里来的
  • 加计扣除声明在哪里签章有效
  • 一般纳税人减免增值税政策
  • 个人股权转让未分配利润如何处理
  • 非公益捐赠税率
  • 保险赔款个人所得税计算
  • 美元转到中国账户可不可以取人民币
  • 增值税税控系统的税务处理
  • 个税申报表在哪下载打印
  • 固定资产折旧税务处理
  • 个人非货币性资产投资的税务筹划
  • 个税什么情况可以不用汇算
  • 什么科目呀
  • 印花税的征收范围
  • 差额征税和差额计税
  • 增值税普通发票有什么用
  • 小型纳税人个人所得税
  • 筹建期间的开办费包括哪些
  • 收到往来款的账务处理
  • windows10如何设置桌面背景
  • 如何把操作系统转移到固态硬盘
  • 预缴附加税款会退税吗
  • php 抓取别的网站的内容
  • php中提交表单数据
  • macOS Catalina10.15.4值得升级吗 macOS Catalina10.15.4更新了什么
  • php常用的设计模式在开发中的实例
  • 楼房贷款需要什么手续没有银行流水怎么办
  • 土建基础是什么意思
  • vue如何配置环境变量
  • nvidia显卡驱动怎么安装
  • Symfony2创建页面实例详解
  • php实现快速排序算法
  • 钉钉工资表如何生成工资条?
  • java幂等性是什么
  • ijk解码是什么意思
  • 其他资本公积核算科目
  • 财政拨入的科技费是什么
  • 法定的盈余公积是什么
  • java timestamp localdatetime
  • 帝国cms采集标签
  • phpcms怎么修改模板风格
  • 使用增值税发票违法吗
  • 企业电子发票申请流程2023版
  • 定期定额个税申报应税项和计税依据为什么不相等
  • 财产租赁合同按金额的多少进行计税
  • 欠款在公司注销怎么处理
  • 餐厅打包盒收费标准通知
  • 上年度亏损,本年要交所得税吗
  • 契税的计税金额是什么
  • 工程审图费入什么会计科目
  • 小微企业可以享受六税两费吗
  • 金蝶财务软件服务器
  • 在什么情况下会冻结微信零钱
  • 从银行取现金是什么凭证
  • 品种法案例分析
  • 已认证未抵扣的发票可以退回红冲吗
  • 哪个行业的会计最难
  • mysql5.7.32免安装教程
  • win2003r2企业版密钥
  • 自制简易手工
  • xp系统怎么修改图标和文字大小
  • 清理macbook清除系统垃圾
  • fan.error是什么意思
  • mac新建窗口快捷键
  • Linux下将Mysql和Apache加入到系统服务里的方法
  • ansi std
  • python安装numpy和matplotlib
  • 简述javascript执行原理
  • 画廊作品
  • win7怎么设定关机时间
  • Linux 中的 lo:0
  • node的express
  • javascript 类
  • 河南十大纳税公司
  • 山东地域分布
  • 5种方式教你如何查询
  • 服务合同需要交个人所得税嘛
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设