您的位置:首页 > Web前端 > JavaScript

JS——继承(创建共有属性和方法)

2017-11-21 11:08 302 查看
function Student(sname,sage) {  //类型名首字母大写
this.sname = sname,
this.sage = sage
/*this.intr = function(){ //这个不能重用,占内存,需用继承
console.log("我是 "+this.sname+",我今年"+this.sage);
}*/
}

//共有方法
Student.prototype.intro = function(){
console.log("我是 "+this.sname+",我今年"+this.sage);
}
Student.prototype.className = "高一1班";
var stu1 = new Student("stu1",11);
var stu2 = new Student("stu2",12);
stu1.intro();
stu2.intro();
console.log(Student.prototype == stu1.__proto__);
console.log(Student.prototype == stu2.__proto__);
console.log(stu1.className);
console.log(stu2.className);
Student.prototype.className = "高二1班";
console.log(stu1.className);
console.log(stu2.className);

代码整理后:

function Student(sname,sage){
this.sname = sname;
this.sage = sage;
}
Student.prototype.intr = function() {
console.log("I am" + this.sname + "age:" + this.sage);
}
Student.prototype.className = "高一1班";

var stu1 = new Student("stu1",11);
var stu2 = new Student("stu2",12);

stu1.intr();
stu2.intr();

console.log(stu1.className);
console.log(stu2.className);

Student.prototype.className = "高二2班";
console.log(stu1.className);
console.log(stu2.className);

console.log(Student.prototype == stu1.__proto__);
console.log(Student.prototype == stu2.__proto__);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: