建構函式和原型

2022-07-09 21:39:11 字數 1159 閱讀 2317

new的時候做的的4個事情

1.在記憶體中建立乙個新的空物件

2.讓this指向這個新物件

3.執行建構函式裡的**  給這個新物件 新增屬性和方法

4. 返回這個新物件

靜態成員與例項成員

靜態成員:由構造本身建立的成員 只能由建構函式本身來訪問

例項成員:在建構函式內部建立的物件成員為例項成員 只能由例項化物件來訪問

建構函式原型prototype

什麼是原型物件:乙個建構函式的屬性 這個屬性也是物件  稱prototype 為原型物件

原型物件物件相當於公共區域   所有同乙個類的例項都可以訪問這個原型物件 可以將這個物件中的共有內容 統一設定在原型物件中

在js中 每當定義乙個函式 就會自帶乙個prototype屬性   這個屬性指向原型物件 並且這個屬性是乙個資料型別的值   不包括箭頭函

數總結:所有公共屬性寫在建構函式裡面  所有公共方法寫在原型物件裡面  每個物件都有乙個屬性  物件原型 執行原型物件

物件原型_proto_

主要作用:指向prototype

每乙個物件都有乙個原型 作用指向原型物件prototype

建構函式和原型物件都有乙個原型屬性proto 指向建構函式的prototype原型物件  

1.proto是乙個標準屬性 不可以拿來賦值和設定唯讀屬性 2. proto物件原型和原型物件prototype是等價的   

原型鏈

找乙個函式的方法  找的時候就是在當前物件找 找不到就去prototype找 然後再去proto找  接著去object找 直到找到的是null  這就是原型鏈吧

建構函式和原型

function student name,age student.prototype var zs new student 張三 18 我們先來看一張圖 在這張圖里student建構函式的prototype指向student原型物件,student原型物件又指向student建構函式,zs物件.p...

javascript原型和原型鏈,建構函式和例項

原型 建構函式 就是工廠,原型的例項就是工廠按照圖紙生成的工具 比如汽車 原型鏈 隱式的 就是生成的工具所具有的功能,而功能是工具的屬性,生成什麼樣的工具是由工廠 建構函式 決定的,圖紙是有工廠和客戶共同決定的 var ca ctory function options this.stop func...

js建構函式和原型

建立物件的方式 1,物件字面量 var obj1 2,new object var obj2 new object 3,利用建構函式建立物件 建構函式 利用建構函式 可以建立很多個物件 建構函式,把物件中公共屬性和方法抽出來,放在建構函式裡,通過new建立不同的物件 function star na...