函式與物件的 原型鏈的一次理解 原型鏈理解01

2021-10-10 23:53:18 字數 804 閱讀 9743

user 為函式 function

user 有函式專屬的屬性 __proto

有prototype 服務於 new 出來的例項

new 乙個新物件 let hd = new user()

// 作為建構函式使用

+ new的作用 創造乙個新的物件

+ 建構函式的作用域給新物件(因此this指向這個新物件)

+ 執行建構函式的** (為新物件新增屬性)

+ 返回新物件

其中 user.prototype == hd.__proto

user 有2個原型 prototype __proto

prototype 服務於 new出來的例項 hd +例子 user.prototype == hd.__proto

__proto__ 服務於 函式物件 (user函式當前物件使用的時候) 如圖

+ 物件 object 可以通過 new object

() 來實現

+ 當我們列印 console.

dir(object)的時候 會發現他有 prototype,

, __proto

+ 我們在 新增show方法 object.prototype.show =

function()

+ 會發現 user 函式的user.prototype , user.__proto__ 都有 show方法

+ 而且 user.prototype.__proto__ == user.__proto__.__proto__

js原型物件和原型鏈的理解

原型的存在主要是為了解決在例項化時,節省記憶體,可以減少例項化是物件內部的屬性或者方法過多,可以將這些屬性或者方法放在原型上,例項物件在需要這些屬性或者方法時,可以直接呼叫,js會根據原型鏈進行查詢。function protof name,age protof.prototype.showtest...

原型與原型鏈的理解及解釋

原型和繼承constructor prototype proto 建構函式 例項物件 用來初始化新建立的物件的函式是建構函式。在 c 語言中,類 有乙個建構函式,它與類同名且沒有返回值的 可以不寫,也可過載多個 在 js 中,沒有 類 的概念,原型物件 姑且等同於 類 原型物件有 construct...

理解函式 建構函式 原型與原型鏈四者之間的關係

第一 如何理解函式 建構函式相同點和不同點?建構函式就是乙個普通的函式,建立方式和普通函式沒有區別,不同的是建構函式習慣上首字母大寫。建構函式和普通函式的區別就是呼叫方式的不同,普通函式是直接呼叫,而建構函式需要使用new關鍵字來呼叫。例如 建立乙個person函式和person建構函式 普通函式 ...