更新時間:2024-04-21 14:15:06 來源:動力節(jié)點 瀏覽965次
在 JavaScript 中,每個對象都有一個原型對象(prototype),這個原型對象可以作為該對象的父對象(parent),而父對象則會有自己的原型,從而形成原型鏈(prototype chain)。JavaScript 原型和原型鏈的概念是實現(xiàn)繼承的重要機制,可以讓對象實例化后可以訪問到其原型上的屬性和方法。
當(dāng)訪問一個對象的屬性時,首先會在對象自身的屬性中查找,如果沒有找到,則會沿著原型鏈向上查找,直到找到該屬性或者到達(dá)原型鏈的頂端。如果最終還是沒有找到該屬性,則會返回 undefined。
以下是一個簡單的例子,說明原型和原型鏈的概念:

在上面的例子中,定義了一個 Animal 構(gòu)造函數(shù),該函數(shù)有一個原型對象,在其原型對象上定義了一個 say 方法。同時還定義了一個 Cat 構(gòu)造函數(shù),繼承自 Animal,并在其原型對象上定義了一個 catchMouse 方法。在創(chuàng)建一個 Cat 實例后,該實例可以訪問到其原型上的 say 方法,以及原型鏈上的 Animal 的屬性和方法。
相關(guān)閱讀