3. 类 和 继承
class User { constructor(username, email, password) { this.username = username; this.email = email; this.password = password; }// constructor 构造方法,一个类必须有,没有会自带constructor(){} static countUsers() { // 静态方法 console.log('there are 50 users'); } register() { console.log(this.username+'is now registered!'); } } let bob = new User('bob', 'bob@email.com', '123456'); bob.register(); // bob is now registered User.countUsers(); // there are 50 users 调用静态方法 class Member extends User{ // 继承 constructor(username, email, password, memberPackage) { super(username, email, password); // super 其实是在调用父类的constructor ,继承父类的this对象 this.package = memberPackage; } getPackage() { console.log(this.username + 'is subscribed to the' + this.package + 'package'); } } let mike = new Member('mike', 'mike@email.com', '123123', 'standard'); mike.getPackage(); mike.register(); // 继承父类的方法
关键问题:类的写法,继承写法,constructor, super, 静态方法的调用