js的物件繼承

2022-08-30 14:24:21 字數 1077 閱讀 5833

js物件繼承方式不止一種,而且是模仿實現的繼承。

1、物件冒充方式:

例子:function classa(color)

classa.prototype.color = "red";

classa.prototype.showcolor = function(){

alert(this.color);

classb.prototype = new classa();//書上說是為了把classa的物件的所有屬性和方法賦予classb的prototype屬性。為何不用classa.prototype = classb.prototype呢,不明白,求指教。

var b = new classb();

b.color = 'blue';

b.showcolor();   //結果為blue;

這種方式下b instanceof classa 的結果為true。

3、使用混合方式

function classa(color){

this.color = color;

this.name = name;

classa.prototype.showcolor =  function(){

alert(this.color);

function classb(color,name){

this.temp = classa();    //使用物件冒充的方式繼承classa的屬性

this.temp(color);

this. name = name;

classb.prototype = new classa();  //使用原型方式繼承classa的方法

classb.prototype.showname() = function(){  //classb自己的方法

alert(this.name);

var b = new classb('red','tom');

b.showcolor();  //結果為'red';

b.showname(); //結果為'tom';

這種方式下b instanceof classa的結果仍為true。

js物件繼承

自有屬性 own property 物件本身具有的屬性 繼承屬性 從原型物件 prototype object 繼承而來 物件的查詢過程 查詢過程中,查詢物件o的屬性x,如果o的屬性不存在x,則對o的原型物件進行查詢,使原型鏈查詢。屬性賦值操作過程 屬性賦值過程中,先檢查原型鏈,以此判斷是否允許賦值...

JS物件 繼承

js物件定義的方法 方法一 通過var object 物件字面量 1 可以叫物件直接量來自定義乙個物件。物件自面量是乙個表示式,這個表示式的每次運算都建立並初始化乙個新物件 2 還可以換行寫,每義定乙個屬性名和值,用逗號分開,最後乙個不加逗號,加了會被忽略,但在ie中會報錯,最好不要加 方法二 通過...

js中物件的繼承

js中物件的繼承 1.物件冒充 js中沒有訪問修飾符的概念 可以實現多繼承 但會出現干擾,如果父類a和父類b中都定義了同名的屬性或方法,後面的繼承就會把前面的給替換掉了 不推薦 function parent username function child username,password var...