位置: 编程技术 - 正文

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)

  • 小规模纳税人没有税控盘怎么报税
  • 税务师财务与会计难不难
  • 不得公开发行股票的情形
  • 小规模的开专票怎么征税
  • 资本公积不足冲减是什么意思
  • 土地使用权契税入账会计分录
  • 工程项目估算收入要缴税吗
  • 一般纳税人软件销售税率
  • 防伪税控业务
  • 确认销售收入的重要依据是什么
  • 资源税代扣代缴怎么操作
  • 购买的职业险计入哪个科目
  • 收到国外的服务费怎么开票
  • 外贸公司的出口清单
  • 技术服务结转成本的会计分录
  • 阿里云增值税专用发票
  • 什么时候需要计提税金及附加
  • 税率开错的增值税发票怎么办
  • 待认证进项税额借贷方向
  • 购进货物作为优秀员工的奖励是否可以进项抵扣?
  • 销售方收到红字信息表
  • 营销活动的意义是什么
  • 库存周转天数计算实例
  • 为什么红字信息查不到
  • 库存商品转在建工程摘要怎么写
  • 政府无偿给企业划拨土地是否需摊销
  • 戴尔r710服务器系统安装详解
  • 在windows7提供了一种什么技术
  • 职工教育经费怎么记账
  • win10商店如何改地区
  • 固定资产更新改造支出计入什么科目
  • 新车发生事故报废保险怎么赔付
  • 未结算未取得发票怎么办
  • php关联数组和索引数组的区别
  • thinkphp i方法
  • mongodb 查询条件
  • named命令
  • php实现站内消息推送
  • 帝国cms8.0
  • 进项发票抵扣税率
  • 纳税人的交际应酬消费可以抵扣进项税额
  • 从合同有什么
  • SQL2008中通过DBCC OPENTRAN和会话查询事务
  • sql server怎么升级版本
  • 银行对账单和存款日记账怎样核对并标识
  • 免抵退不得抵扣税额什么意思
  • 房租可以一次性抵扣吗
  • 借递延所得税资产贷递延所得税费用
  • 商业承兑汇票风险高吗
  • 报表的应付账款怎么算
  • 员工报销的话费要缴纳个税吗?
  • 厂房违建如何处理
  • 留底税额怎么入账
  • 期末调汇汇兑损益科目
  • 塔吊租赁费用是否包括司机指挥
  • sql语句错误提示
  • Mysql使用教程
  • 虚拟机linux端mysql数据库无法远程访问的解决办法
  • win7系统桌面图标不见了右键无反应
  • WIN10系统优化技巧
  • 电脑开机一直显示windowsxp
  • win10预览版21301bug
  • 安装macos10.15.7
  • 事件处理的三个要素
  • codeblocks配置文件在哪
  • js两个函数互相调用
  • 基于JAVASCRIPT实现的可视化工具是
  • js 括号函数
  • 安卓版影音播放器哪个好用
  • js快速生成数组
  • node通过express搭建自己的服务器
  • js怎么获取密码框内容
  • python smtpd
  • android pipepline
  • 车船税多少钱一辆
  • 督察综合服务中心是干什么的
  • 济南个税起征点是多少2021
  • 租房完税证明需要房东交钱吗?
  • 土地流转需要什么材料
  • 电子税局个税申报步骤
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设