JS高階之prototype的使用

2021-10-19 14:37:04 字數 705 閱讀 9810

1.prototype的介紹

每個函式都有乙個prototype屬性,預設指向乙個object空物件(原型物件)

原型物件中有乙個constructor,指向函式物件

下面是乙個例子:

function people(name,age)
如果要新增乙個新的屬性需要在建構函式裡面新增,比如要新增乙個***屬性

function people(name,age)
而不能直接在物件構造器中新增,比如person.*** = 『男』

2.prototype繼承

所有js物件都會從prototype中繼承屬性和方法

function people(name,age)

}people.prototype.sleep = function()

var people = new people('tom', 18)

people.meal() //列印輸出酸菜魚

people.sleep() //列印輸出睡覺中...

在這個例子中,people是乙個例項物件,它可以呼叫父類的方法。

js物件有乙個指向原型物件的鏈,當訪問乙個物件的屬性時,它會先從物件本身尋找這個屬性,找不到,會依次向上尋找該物件的原型,以及原型的原型,層層向上搜尋,直到找到乙個物件的屬性或到達原型鏈的尾部。

JS高階 函式的prototype

思維導圖 棧堆翻譯為為stack 1 原型與原型鏈 概念一 原型物件 驗證步驟 1 列印data函式的原型prototype 原型屬性指向原型物件 es原始碼結構分析示意 2 空物件 3 js特點 動態新增屬性 小結 prototype原型 constructor構造 1 每個函式有乙個protot...

js中的原型prototype

var arr1 new array 12,34,98,43,38,79,56,1 arr1.sum function var result 0 for var i 0 i如果現在還有個arr1 物件也要求和 var arr2 new array 54,29,1,10 那麼還要給 arr2再新增乙個...

JS 原型(prototype)詳解

首先來看一段 function c function f 在js中 function 關鍵字有兩個含義,既可以把它當作乙個普通函式關鍵字,也可以把它當作類的建構函式 即定義類 關鍵字。上面定義的兩個函式,不管你是想定義乙個類的建構函式還是就定義乙個普通函式。它們都包含乙個prototype和cons...