javascript 带原型的构造器用法

/*

*有时创建实例要做原型里的事,又做一些额外的事,还得和其他实例保持一样的用法。

*这时用带原型的构造器就比较容易完成这些事

*/

function p(x,n){

this.name = n;

this.xing = x;

this.toString = function(){

console.log(this.xing + this.name);

};


}

p.prototype.work = function(){

console.log("写代码");

/*比如这边做了很多事 */

};


var t0 = new p("张","三"),

    t1 = new p("李","四");


t1.work = function(){

p.prototype.work.call(this);

/*除了做原型的事外,还有再做其他事*/

console.log("还要写周报");

}


t0.toString();

t0.work();   //他只做原型规定的事就好了


t1.toString();

t1.work();

/*输出

张三 tprototype.js:5

写代码 tprototype.js:10

李四 tprototype.js:5

写代码 tprototype.js:10

还要写周报 tprototype.js:20

 */


你可能感兴趣的:(JavaScript,带原型的构造器用法)