-
And as class constructors
-
Properties and Methods separate written
// 老版本 function User(name, pass) { this.name = name this.pass = pass } User.prototype.showName = function () { console.log(this.name) } User.prototype.showPass = function () { console.log(this.pass) } var u1 = new User('able', '1233') u1.showName () u1.showPass() // older versions inherit function VipUser (name, Pass, Level) { User.call(this, name, pass) this.level = level } VipUser.prototype = new User() VipUser.prototype.constructor = VipUser VipUser.prototype.showLevel = function () { console.log(this.level) } was v1 = new VipUser ( 'blue', '1234', 3 ) v1.showName () v1.showLevel()
-
With the class keyword, constructor
-
class method which directly added
-
Inheritance, super super class == parent
class User { constructor(name, pass) { this.name = name this.pass = pass } showName () { console.log(this.name) } showPass() { console.log(this.pass) } } var u1 = new User('able2', '111') u1showName (),; // able2
u1.showPass(); // 111
// 新版本继承
class VipUser extends User {
constructor(name, pass, level) {
super(name, pass)
this.level = level
}
showLevel(){
console.log(this.level)
}
}
v1 = new VipUser('blue', '123', 3)
v1.showLevel();// 3