首頁  >  文章  >  web前端  >  js中new一個物件的過程

js中new一個物件的過程

高洛峰
高洛峰原創
2017-02-21 14:34:131292瀏覽

本文主要介紹了js中new一個物件的過程。具有很好的參考價值,以下跟著小編一起來看下吧

使用new關鍵字呼叫函數(new ClassA(…))的具體步驟:

#1. 建立空對象{}

#2. 使用新對象,呼叫函數,函數中的this被指向新實例對象:

         {}.建構子();          

3.設定新物件設定新物件設定新物件。的constructor屬性為建構函式的名稱,設定新物件的__proto__屬性指向建構函式的prototype物件

4. 將初始化完畢的新物件位址,儲存到等號左邊的變數中

注意:若建構函式中沒有傳回值或傳回值是基本型別(Number、String、Boolean)的值,則傳回新實例物件;若傳回值是引用型別的值,則實際傳回值為這個參考型別。

var foo = "bar";
function test () {
 this.foo = "foo";
}
new test();          //test中的this指新对象,并未改变全局的foo属性
console.log(this.foo);  // "bar"
console.log(new testThis().foo); // "foo";new和属性访问.运算符优先级相通,从左往右执行

以上皆為個人理解,如有錯誤之處,歡迎留言指正。

更多js中new一個物件的過程相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn