博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS - Class继承
阅读量:5276 次
发布时间:2019-06-14

本文共 892 字,大约阅读时间需要 2 分钟。

我们先回顾用函数实现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

你可能感兴趣的文章
如何设置映射网络驱动器的具体步骤和方法
查看>>
centos下同时启动多个tomcat
查看>>
Leetcode Balanced Binary Tree
查看>>
[JS]递归对象或数组
查看>>
linux sed命令
查看>>
程序存储问题
查看>>
优雅地书写回调——Promise
查看>>
AX 2009 Grid控件下多选行
查看>>
PHP的配置
查看>>
Struts框架----进度1
查看>>
Round B APAC Test 2017
查看>>
MySQL 字符编码问题详细解释
查看>>
寄Android开发Gradle你需要知道的知识
查看>>
整理推荐的CSS属性书写顺序
查看>>
css & input type & search icon
查看>>
C# 强制关闭当前程序进程(完全Kill掉不留痕迹)
查看>>
语音识别中的MFCC的提取原理和MATLAB实现
查看>>
0320-学习进度条
查看>>
MetaWeblog API Test
查看>>
移动、尺寸改变
查看>>