位置: 编程技术 - 正文

javascript中的3种继承实现方法

编辑:rootadmin

推荐整理分享javascript中的3种继承实现方法,希望有所帮助,仅作参考,欢迎阅读内容。

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

使用Object.create实现类式继承

下面是官网的一个例子

此时Rectangle原型的constructor指向父类,如需要使用自身的构造,手动指定即可,如下

Rectangle.prototype.constructor = Rectangle;

使用utilities工具包自带的util.inherites

语法

util.inherits(constructor, superConstructor)例子

也很简单的例子,其实源码用了ES6的新特性,我们瞅一瞅

javascript中的3种继承实现方法

其中Object.setPrototypeOf即为ES6新特性,将一个指定的对象的原型设置为另一个对象或者null

语法

Object.setPrototypeOf(obj, prototype)obj为将要被设置原型的一个对象prototype为obj新的原型(可以是一个对象或者null).

如果设置成null,即为如下示例

Object.setPrototypeOf({}, null);感觉setPrototypeOf真是人如其名啊,专门搞prototype来玩。那么这个玩意又是如何实现的呢?此时需要借助宗师__proto__

即把proto赋给obj.__proto__就好了。

使用extends关键字

熟悉java的同学应该非常熟悉这个关键字,java中的继承都是靠它实现的。ES6新加入的class关键字是语法糖,本质还是函数.

在下面的例子,定义了一个名为Polygon的类,然后定义了一个继承于Polygon的类 Square。注意到在构造器使用的 super(),supper()只能在构造器中使用,super函数一定要在this可以使用之前调用。

使用关键字后就不用婆婆妈妈各种设置原型了,关键字已经封装好了,很快捷方便。

JavaScript中的this,call,apply使用及区别详解 学习起因:在之前的JavaScript学习中,this,call,apply总是让我感到迷惑,但是他们的运用又非常的广泛。遂专门花了一天,来弄懂JavaScript的this,call,apply。中

JavaScript数据结构与算法之栈与队列 学习起因曾经有一次在逛V2EX时,碰到这么一个帖子。数学完全还给老师了,想学回一些基础数学,大概是高中程度的,有什么书籍推荐?发帖的楼主大

JavaScript数据结构与算法之链表 链表简介链表是一种常见的数据结构,也属于线性表,但不会按线性的顺序来储存数据。而是在每一个节点中,储存了下一个节点的指针。可以看图理

标签: javascript中的3种继承实现方法

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

上一篇:javascript中new关键字详解(js new option)

下一篇:JavaScript中的this,call,apply使用及区别详解(javascript中的this)

  • 增值税电子发票查询平台
  • 增值税专用发票丢失了要怎么处理
  • 企业信用公示的时效是多久
  • 为什么开发成本资本化
  • 回购股票注销股本,股价大涨案例
  • 进项和销项税额需要结转吗
  • 企业垃圾处理费计入什么科目
  • 应交税费明细表填制
  • 预收款转营业外收入条件
  • 新会计准则下长期股权投资的变化
  • 交以前年度所得税怎么算
  • 广告宣传费用的计算方法
  • 纳税人如何办理纳税申报
  • 委托贷款利息收入现金流
  • 金税是干什么的
  • 单位代扣代缴个人社保
  • 对公账户验证款怎么记账
  • 销售方如何开具红字增值税专票 对方未抵扣
  • 税收完税证明是契证吗
  • 税局代开专票作废怎么做账
  • 无偿使用固定资产如何缴税
  • 独生子女补贴怎么查询
  • 公司租的宿舍记什么科目
  • 一篇不错的php基础论文
  • cortana小娜可以卸载吗
  • 工程事故赔偿协议书怎么写
  • 提坏账准备的调整分录
  • wordpress 中文版和国际版区别
  • 麦克米伦anki
  • 如何申请菜鸟驿站快递代理点
  • 企业个人借款会计分录
  • vue实现鼠标悬浮 显示全部内容
  • React hooks中 useState踩坑-=--异步问题
  • 怎么计提企业所得税
  • 银行利息收入应计入什么科目
  • php用在哪些方面
  • 最近爆火的抖音神曲
  • vue 绑定子组件属性
  • node.js快速入门
  • ChatGPT在热门行业的应用场景有哪些
  • 销项和进项税额还需要月底转出么
  • ca证书收费金额是多少?
  • 管理费用只能在借方吗
  • java如何导出
  • dedecms主页修改
  • pytest unittest
  • 工程结算成本和主营业务成本一样吗
  • 财付通支付备付金
  • 建筑行业未取得收入如何结转成本
  • 资本公积金转增股本是利好吿
  • 利润分配和所有者权益的关系
  • 盈余公积多计提对报表的影响
  • 全额计提的坏账怎么做账
  • 收银电脑怎么录商品
  • 与其他企业联合投资一个项目要怎么做账务处理?
  • 营业外收支主要有哪些
  • sqlserver
  • win8.1配置要求
  • window10系统邮件设置在哪里
  • win 2008
  • solaris ip配置
  • 交换机操作系统版本
  • 怎么把ubuntu装在u盘上
  • win7关机总是自动重启
  • win10红石版
  • postgres.exe是什么进程 postgres进程查询
  • linux安装dns软件包
  • opengl自学
  • easyui搜索框
  • bootstrap基础
  • python从入门到精通第三版pdf下载
  • jquery 重写 ajax提交并判断权限后 使用load方法报错解决方法
  • js判断是否是ie浏览器
  • jquery.browser
  • jquery获取table指定的行列
  • 江西省税务局发票查询平台官网
  • 党建 共享
  • 市民服务热线有用吗
  • 利润表研发费用项目应根据管理费用
  • 河南省纪检委网站
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设