首页 > Web开发 > 详细

JS 类和继承

时间:2019-07-03 00:34:18      阅读:125      评论:0      收藏:0      [点我收藏+]
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)
}


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)
}


var u1 = new User(‘u1‘, ‘123‘)
u1.showName()
u1.showPass()

var v1 = new VipUser(‘v1‘, ‘123‘, ‘1‘)
v1.showName()
v1.showPass()
v1.showLevel()

console.log(v1 instanceof User);
console.log(v1 instanceof VipUser);
console.log(u1 instanceof User);
console.log(u1 instanceof VipUser);

  

ES6中

 

class User {
    constructor(name, pass) {
        this.name = name
        this.pass = pass
    }

    showName() {
        console.log(this.name)
    }
    showPass() {
        console.log(this.pass)
    }
}

class VipUser extends User {
    constructor(name, pass, level) {
        super(name, pass)
        this.level = level
    }
    showLevel(){
        console.log(this.level)
    }
}

var u1 = new User(‘u1‘, ‘123‘)
u1.showName()
u1.showPass()

var v1 = new VipUser(‘v1‘, ‘123‘, ‘1‘)
v1.showName()
v1.showPass()
v1.showLevel()

console.log(v1 instanceof User);
console.log(v1 instanceof VipUser);
console.log(u1 instanceof User);
console.log(u1 instanceof VipUser);

  

  

JS 类和继承

原文:https://www.cnblogs.com/413xiaol/p/11123759.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!