JS - Class继承
我们先回顾用函数实现Student
的方法:
function Student(name) {this.name = name; } Student.prototype.hello = function () { alert('Hello, ' + this.name + '!'); }
如果用新的class
关键字来编写Student
,可以这样写:
class Student {constructor(name) {this.name = name;}hello() {alert('Hello, ' + this.name + '!'); } }
比较一下就可以发现,class
的定义包含了构造函数constructor
和定义在原型对象上的函数hello() 用
class定义对象的另一个巨大的好处是继承更方便了,一想我们从Student
派生一个PrimaryStudent
需要编写的代码量。现在,原型继承的中间对象,原型对象的构造函数等等都不需要考虑了,直接通过extends
来实现:
class primereStudent extends Student(name,grade){constructor(name,grade){super(name);this.grade=grade;}saygrade(){return ('My grade is: ' + this.grade );} }
解释: 要想继承,必须有 extends,constructor ,super(xxxx), 我们这里,constructor构造函数,name 是 我们继承过来的,所以要super(name)/*类似python*/, grade是新参数,所以要 this.grade=grade,
asygrade 是 我们自己的函数,所以声明。
转载于:https://www.cnblogs.com/3532gll/p/9535610.html
JS - Class继承相关推荐
- Js Call方法详解(js 的继承)
call 方法 请参阅 应用于:Function 对象 要求 版本 5.5 调用一个对象的一个方法,以另一个对象替换当前对象. call([thisObj[,arg1[, arg2[, [,.argN ...
- js中继承的几种用法总结(apply,call,prototype)
本篇文章主要介绍了js中继承的几种用法总结(apply,call,prototype) 需要的朋友可以过来参考下,希望对大家有所帮助 一,js中对象继承 js中有三种继承方式 1.js原型(proto ...
- 你真的理解JS的继承了吗?
噫吁嚱,js之难,难于上青天 学习js的这几年,在原型链和继承上花了不知道多少时间,每当自以为已经吃透它的时候,总是不经意的会出现各种难以理解的幺蛾子.也许就像kyle大佬说的那样,js的继承真的是' ...
- (转)js实现继承的5种方式
js是门灵活的语言,实现一种功能往往有多种做法,ECMAScript没有明确的继承机制,而是通过模仿实现的,根据js语言的本身的特性,js实现继承有以下通用的几种方式 1.使用对象冒充实现继承(该种实 ...
- 面试官问:JS的继承
原文作者若川,掘金链接:https://juejin.im/post/5c433e216fb9a049c15f841b 写于2019年2月20日,现在发到公众号声明原创,之前被<前端大全> ...
- Node.js: 如何继承 events 自定义事件及触发函数
events 是node.js的核心api ,几乎大部分node.js 的api都继承 events 类(javascript中没有类,也不存在继承,确切说是模拟类和继承,点击查看) 比如我们常见的 ...
- 学会这5种JS函数继承方式,前端面试你至少成功50%
摘要:函数继承是在JS里比较基础也是比较重要的一部分,而且也是面试中常常要问到的.下面带你快速了解JS中有哪几种是经常出现且必须掌握的继承方式.掌握下面的内容面试也差不多没问题啦~ 本文分享自华为云社 ...
- JS原型继承和类式继承
类式继承(构造函数) JS中其实是没有类的概念的,所谓的类也是模拟出来的.特别是当我们是用new 关键字的时候,就使得"类"的概念就越像其他语言中的类了.类式继承是在函数对象内调用 ...
- js - prototype 继承
基本的用法 把ClassA的一个实例赋值给ClassB ClassB就继承了ClassA的所有属性 1 function ClassA(){ 2 this.a='a'; 3 } 4 function ...
- oncreate为什么一定要调用父类的oncreat_为什么你老是讲不清楚JS的继承模式
点击上方 "前端技术精选" 关注,星标或者置顶 17点30分准时推送,第一时间送达 作者:DBCdouble | 编辑:前端妹 来自:juejin.im/post/68696896 ...
最新文章
- CrazePony飞行器--通信部分介绍【转】
- 无法使用BIPublisher开发报表
- Matlab图形用户界面编程初级入门
- 这 17 个 JVM 参数,高级 Java 必须掌握!
- mysql校对规则设计编码命令
- 剖析Hadoop和Spark的Shuffle过程差异(一)
- IDEA2021创建Java Web项目
- SQL语句 怎么把从一个表中查出来数据插入到另一个表中
- Materials about design pattern
- Blocking/Non-Blocking VS Sync/Async VS Overlapped
- POJ-2069 Super Star(最小球覆盖)
- js change事件 获取新值和旧值_前端总结(JS篇)
- express 创建ejs项目,使用html
- c语言学习-输入一个十进制数,输出其对应的八进制数据
- 我的世界工业服务器透视修改,教程/透视镜 - Minecraft Wiki,最详细的官方我的世界百科...
- HTTP1.1之后的长连接和WebSocket的长连接之间的区别
- jsp页面输出excel文件乱码解决方案
- 面试必考:秒杀系统的9个核心知识点,一次性打包给你
- 【java】列表导出excel(支持单元格内容换行展示)
- Largest Submatrix (最大全1子矩阵)
热门文章
- [读书笔记] 深入探索Android热修复技术原理 (手淘技术团队)
- Android Binder机制----实现自定义的系统服务
- 两个list关联合并_算法分享---两个有序链表的合并(C语言)
- 和nptf螺纹一样吗_摩托车火花塞长短不同,对发动机有影响吗?
- 华为v9计算机在哪方面的应用,华为荣耀V9和华为Mate9区别在哪 哪款更好?
- anaconda tensorflow 2.3_2020款福特撼路者将于7月17日上市 动力升级/搭载2.3T+10AT
- php json_encode后乱码,php json_encode 中文乱码的解决方法
- dmx512协议c语言编程,DMX512协议+c程序代码.pdf
- thinkphp memcache mysql_thinkphp中memcache的用法实例
- Shell命令-内置命令及其它之exec、export