this.n = n;
this.name = setName
}
med.prototype.aim = '营销计划';
med.prototype.a = function(){alert("d9"+this.n)};
function setName(){alert("name"+this.n);}
var med1 = new med("d");
med1.name();
function wd(skill){
//med.apply(this,arguments);
this.skill = skill;
}
//------华丽的分割线-----------------------------------------------------------------
//这个extend函数就是YUI库如何实现继承的方法。利用 prototype模式的封装函数
function extend(child, parent){
var f = function(){};
f.prototype = parent.prototype;
child.prototype = new f();
child.prototype.constructor = child;
}
extend(wd, med);
var wd1 = new wd("dd");
wd.prototype.aim = "dd";
//alert(wd1.aim);
wd1.a;
var med1 = new med();
//alert(med1.aim);
//------华丽的分割线-----------------------------------------------------------------
//方法2通过属性的复制 把父对象的属性全部复制到子对象中实现继承
var p = parent.prototype;
var c = child.prototype;
for (var i in p){
c[i] = p[i];
}
}
extendCopy(wd, med);
var wd2 = new wd("ddddd");
//alert(wd2.aim);
/* f.prototype = med.prototype;
wd.prototype = new f();
wd.prototype.constructor = wd;
wd.prototype.aim = "haha";
var wd1 = new wd(1);
alert(wd1.aim);
var wd2 = new wd(2);
alert(med.prototype.aim);*/
注意 继承时 无法 继承 原型内定义的属性 如有需要请使用APPLY CALL
使用 APPLY CALL时修改子属性时会把父相同属性一同修改
所以两种方法请 大家按需所用