js的是基于原型鏈繼承的,請問下面的兩種情況差別在哪里?
function Oa(){
}
Oa.prototype={
fn1:function(){},
fun2:function(){}
}
function Ob(name,age){
this.name=name;
this.age=age;
}
//第一種寫法,類Ob通過new繼承了Oa的屬性(此處為空)和原型
Ob.prototype=new Oa;
//第二種寫法,直接把Oa的原型對象賦值給了Ob
Ob.prototype=Oa.prototype;
這兩種寫法,都能夠?qū)崿F(xiàn)Ob的實例共享了Oa原型對象上的方法,差別在于第一種寫法可以看作Oa是基類,Ob是子類,而第二種寫法不是嗎
js的函數(shù)屬性prototype
千萬里不及你
2018-12-07 05:21:45