new一個構造函數時具體執行了什么操作?
1.在內存中新建一個空對象;
2.this指向這個內存中的空對象;
3.根據定義的鍵值和傳入的參數,依次給這個空對象添加上鍵值對;
4.在構造函數語句末尾添加return this,也就是把這個指向內存中剛剛創建的新對象的指針return出去,傳址賦值給變量。
說明:
1.所以在構造函數中是不會去人為添加return語句的,假設添加了return語句,默認添加的return this將被擋住,無法執行。這就是說:雖然實例化的對象已經在內存中創建好了,卻沒有辦法把指針return出去賦值給變量;
2.箭頭函數中的this始終指向定義時的this,在構造函數中,即恆指向在內存中創建的新對象,跟誰來執行它沒有關系。