天天看點

JavaScript 原型對象學習記錄,js new一個對象的過程

JavaScript 資料類型分為 基本類型,引用類型

基本類型:

string,number,Boolean,object,null,undefined

引用類型:

String,Number,Boolean,Object,Function,Array,Date,RegExp,Error

每個對象都有内置屬性prototype(原型),chrome裡是 __proto__

JavaScript 原型對象學習記錄,js new一個對象的過程

對象建立後,會有一個隐式的__proto__[[prototype屬性被建立]]

這個屬性會指向自己的原型對象

原型對象也有__proto__屬性,指向Object

圖檔來源  bilibili  “技術蛋老師”  視訊位址:https://www.bilibili.com/video/BV117411v76o

強烈推薦老師的視訊

JavaScript 原型對象學習記錄,js new一個對象的過程

面試題:JavaScript new一個對象的過程

function Mother(lastName){
    this.lastName = lastName
}
var son = new Mother("dd")
           
  1. 建立一個新對象 son
  2. 新對象會被執行 [[prototype]]連接配接,prototype屬性指向原型對象. son.__proto__ = Mother.prototype
  3. 新對象和函數調用的this會綁定起來 Mother.call(son,“dd")
  4. 執行構造函數中的代碼  son.lastName;
  5. 函數沒有傳回值,就會自動傳回這個新對象,return this

繼續閱讀