js高階 原型的使用方法

2021-08-14 00:15:50 字數 987 閱讀 1466

1、原型的使用方法

(1)利用物件的動態特性給原型物件新增成員(屬性、方法)

(2)直接替換原型物件:

物件.prototype裡面的prototype其實就是物件的乙個屬性,所以是可以修改替換的。如果使用過這種方式使用原型,那麼會出現如下問題

<1>在替換原型之前建立的物件的原型  和  在替換原型物件之後建立的物件的原型  不是同乙個

person

.prototype= ;

function

person

(name

,age

,gender)

person

.prototype

.sayhello

=function();

varp =

newperson

("哈哈哈",19

,"male");

p.sayhello();

//替換了原型物件

person

.prototype= ;

varp1 =

newperson

("12",12

,"male");

console

.log

(p1.

msg);

p1.sayhello

();            

//p1不能呼叫sayhello()

p.sayhello

();                

//p能呼叫sayhello()

為什麼p1不能呼叫sayhello()而p2能?

替換原型物件之前:

替換原型物件之後:

JS高階 原型和原型鏈

原型鏈是一種關係,例項物件和原型物件之間的關係,關係是通過例項物件中瀏覽器使用的原型 proto 來聯絡的 自定義建構函式,通過例項化,建立例項物件 例項物件中 proto 是原型,瀏覽器使用的 建構函式中的prototype是原型,程式設計師使用的 使用物件 使用物件中的屬性和物件中的方法,使用物...

js 高階 原型與原型鏈

所有函式都有乙個特別的屬性 prototype 顯式原型屬性 所有例項物件都有乙個特別的屬性 proto 隱式原型屬性 1.每個函式都有乙個prototype屬性,它預設指向乙個物件 objectg 即稱為 原型物件 顯式原型與隱式原型的關係 函式的prototype 定義函式時被自動賦值,值預設為...

js 高階 原型物件

任何物件都有原型物件,也就是prototype屬性,任何原型物件也是乙個物件,該物件就有 proto 屬性,這樣一層一層往上找,就形成了一條鏈,我們稱此為原型鏈 1.建構函式的prototype屬性指向了建構函式原型物件 2.例項物件是由建構函式建立的,例項物件的 proto 屬性指向了建構函式的原...