位置: 编程技术 - 正文

Javascript继承机制详解(js继承怎么实现)

编辑:rootadmin

推荐整理分享Javascript继承机制详解(js继承怎么实现),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js继承的三种方式,js继承的三种方式,js继承的三种方式,javascript继承原理,javascript继承原理,javascript继承原理,javascript 继承,javascript 继承,内容如对您有帮助,希望把文章链接给更多的朋友!

学完了Javascript类和对象的创建之后,现在总结一下Javascript继承机制的实现。Javascript并不像Java那样对继承机制有严格明确的定义,它的实现方式正如它的变量的使用方式那样也是十分宽松的,你可以设计自己的方法“模仿”继承机制的实现。有以下几种方法:

1、对象冒充

function定义的代码块就相当于一个类,你可以用而且它有this关键字,你可以用this为它添加属性和方法,上述代码中有以下两句:

this.newMethod1=classA; this.newMethod1(str);

classB中定义了newMethod1变量,它是一个引用,指向了classA,并且还调用了classA,这两句代码的作用等同于直接将classA代码块中的内容直接复制到这里,这样创建的classB对像当然具有classA的属性和方法了。对象冒充还可以实现多继承,如下:

不过,classY会覆盖classX中同名的属性和方法,如果设计没问题的话,classz也不应该继承具有相同属性和方法的不同类。

Javascript继承机制详解(js继承怎么实现)

2、利用call()方法

call()方法中第一个参数传递一个对象,这里的this指的是当前对象,后面的参数(可能有多个)是指传递给调用call()方法的类(函数)所需要的参数,classA.call()也是相当于直接将classA代码块中的内容直接复制到这里,classB的对象同样可以直接使用classB中的变量和方法。

3、原型链

这里对类的定义要用prototype关键字,定义function时不带有参数,prototype后面的变量或方法相当于java中被static修饰后的属性和方法,是属于所有对象的,这里有个特殊之处:cB.prototype=new cA();该句话相当于将cA对象内容复制给cB,cB还可以追加自己的属性和方法。

4、混合方法

这里可以将属性封装在类体内,而方法利用原型方式定义,个人感觉,这是一个很好的设计方法,利用prototype定义的函数可以为多个对象重用,这里需要注意两点:cB类体内有cA.call(this,name);同时还要将cB原型赋为cB对象,即:cB.prototype=new cA();cA.call(this,name)同样相当于将cA类块内的代码复制于此,后面一句话又将cA的方法添加给cB,同时cB还可以追加自己的属性和方法。

以上是本次对Javascript继承机制的总结,不足之处望各位指正批评。

Javascript创建类和对象详解 现总结一下Javascript创建类和对象的几种方法:1、原始的创建方法:scripttype="text/javascript"varperson=newObject();person.name="Amy";person.sex="Woman";person.show=function(){d

JavaScript箭头(arrow)函数详解 为了保证可读性,本文采用意译而非直译。另外,本文版权归原作者所有,翻译仅用于学习。本文我们介绍箭头(arrow)函数的优点。更简洁的语法我们先

JavaScript基础之this详解 JavaScript的this和Java等面向对象语言中的this大不一样,bind()、call()和apply()函数更是将this的灵活度进一步延伸。为了保证可读性,本文采用意译而非直译

标签: js继承怎么实现

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

上一篇:JavaScript的继承实现小结(js的继承方式)

下一篇:Javascript创建类和对象详解(js如何创建类)

  • 转让无形资产可以免税吗
  • 不含税的金额
  • 个人所得税的会计科目
  • 中级税务师报名条件
  • 商贸公司成本大吗
  • 现金流量表现金指的什么
  • 费用日记账明细
  • 企业重组失败会怎么样
  • 租赁合同印花税计算
  • 业务招待费的扣除标准是什么2022
  • 即征即退免所得税吗
  • 商品房预售期一般多久
  • 货物已到发票未到怎么做账
  • 房地产开发资质管理办法
  • 企业开办费用的预算
  • 内部交易增值税怎么算
  • 自然人股权出资 税收优惠政策
  • 物业公司收入多少钱
  • 一般纳税人施工费税率是多少
  • 个体户定额定税要做账吗
  • 无偿接收股权
  • 企业采购成本包括所有的仓储费用
  • 企业利息收入如何做分录
  • 装修的增值税
  • 存货减值账务处理 华图
  • win10如何设置闹钟
  • 如何降低融资成本率
  • 不动产租赁如何缴纳增值税
  • 把d盘的空间分配到e盘
  • linux安装常用命令
  • 经营性支出属于哪个科目
  • 有进项没销项怎么处理,可以结转成本吗
  • 票据承兑与票据贴现的区别
  • 商品购进核算
  • 销售过程的主要内容
  • 政府奖励怎么做账
  • 废旧物资回收企业所得税优惠政策
  • 生产企业 制造商
  • 基于深度学习的轴承寿命预测实践,开发CNN、融合LSTM/GRU/ATTENTION
  • 对公收费明细入账计入什么科目
  • pytorch卷积操作
  • 固定资产清理会议记录范文
  • macps字体怎么导入
  • 小规模普票免税的会计分录
  • 尚未报送年度会计报表
  • PHPCMS num 参数是什么意思?
  • pythongui库
  • 间接费用允许调整吗
  • 以前年度损益调整结转到本年利润吗
  • 如何进行会计制度改革
  • 个体户怎么申请电子营业执照
  • 记账软件多少钱一套
  • 其他综合收益算当期损益吗
  • 2021年村级财务管理要点
  • 商场一般是怎么缴纳租金的
  • 出口收汇核销单是什么意思
  • 加计扣除的会计要素
  • 红冲暂估原材料如何做会计分录
  • 微信验证收到的信息在哪
  • 公司老板个人卡收支公司业务属于什么行为
  • 手撕定额发票可以抵扣吗
  • 一个企业只有收入怎么办
  • 不同利益主体之间的利益如何协调
  • 税种工会经费
  • solaris开放指定端口
  • win10高分辨率
  • win7安装软件后所有打开变成记事本
  • 常用的linux操作
  • win10一周年版本
  • quick cocos UIListView之isItemInViewRect方法修正
  • php运行linux命令
  • Unity 相关经典博客资源总结(持续更新)
  • 批处理压缩
  • javascript基于什么的语言
  • JQuery datepicker 用法详解
  • 网络很强大
  • 辽宁事业单位职测考试时间多长
  • 公司完税证明去哪里打印
  • 公司地税申报
  • 上海市办居住证流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设