我創建了兩個函數A和B做了作爲B的原型jsfiddle對象使用的名字,而不是它的財產
function A(){
}
function B(){
this.name ="Class B";
}
B.prototype = A;
var b = new B();
alert(b.name); // expected Class B got A
我知道我應該用B.prototype = new A();
是以上行爲預期? 在上面的場景中是否有可能獲得「B類」而不是「A」?
注:我使用上面,因爲A有它A.text = "Text"
A.text1 = "Text2"
相關的一些財產,我想這些財產可供B.所以B.prototype == A.prototype.
不能使用。
'B.prototype = A;'將函數'A'分配給'B'的原型,這可能不是你想要的。 – elclanrs
這種情況似乎並不重要,因爲你可能永遠都不想這樣做,但是,可以在不支持函數上的非標準'.name'屬性的實現中使用''B類''。 –
...雖然看起來很奇怪,你不能指定一個屬性,因爲'this'是對象,而不是原型。 –