JavaScript面向对象编程——类(笔记)

来源:互联网 发布:苹果音乐制作软件 编辑:程序博客网 时间:2024/06/15 03:19

新的关键字class从ES6开始正式被引入到JavaScript中。class的目的就是让定义类更简单。

class Student {    constructor(name) {        this.name = name;    }    hello() {        alert('Hello, ' + this.name + '!');    }}var xiaoming = new Student('小明');xiaoming.hello();

继承

class定义对象的另一个巨大的好处是继承更方便了,直接通过extends来实现:

class PrimaryStudent extends Student {    constructor(name, grade) {        super(name); // 记得用super调用父类的构造方法!        this.grade = grade;    }    myGrade() {        alert('I am at grade ' + this.grade);    }}

ES6引入的class和原有的JavaScript原型继承有什么区别呢?实际上它们没有任何区别,class的作用就是让JavaScript引擎去实现原来需要我们自己编写的原型链代码。简而言之,用class的好处就是极大地简化了原型链代码。

阅读全文
0 0