建構函式建立物件的 this ?

2022-06-08 08:12:09 字數 736 閱讀 9513

建構函式建立物件的"this"

今天看到個練習:

var spencer2 = new

object();

spencer2.age = 22;

spencer2.country = "united states";

而用 this.age = 22; 則判斷沒通過。

這次演習是使用建構函式符號分配屬性的物件。由於我們最初定義我們的物件作為乙個新的物件new object(),而我們指定的任何屬性,必須通過變數名,因為沒有物件的範圍。

function

person(age,country)

var spencer3 = new person(22,"united states");

console.log(spencer3.country);

看到區別了?

我們可以使用點符號分配(或查詢)的任何物件的變數。文字物件的性質,這意味著他們可以讀取和操作的任何函式,或控制台命令。

在這個練習中,即私有變數/方法,幫助限制範圍。spencer2是乙個自定義的物件沒有屬性,直到我們給他們使用建構函式符號。通過比較的方法,在上面的例子中,spencer3由person建構函式,設定物件被例項化時,與新的person()定義的給定的屬性。在例項化物件的過程中,這有例項範圍內,更特別是在此例項中,spencer3。

如果該物件的任何方法,這將發揮這些方法的執行變數的範圍。

建構函式建立物件

字面量方式 new 關鍵字 借用建構函式 在記憶體中建立乙個新的空物件。讓 this 指向這個新的物件。執行建構函式裡面的 給這個新物件新增屬性和方法。返回這個新物件 建構函式裡面不需要 return 例項成員 建構函式內部通過this新增的成員,例項成員只能通過例項化的物件來訪問 靜態成員 在建構...

建構函式建立物件

建構函式建立物件 function box name,age 建構函式沒有new object,但是它後台會自動var obj new object this就相當於obj 建構函式不需要返回物件引用,它是後台自動返回的 建構函式也是函式,但函式名第乙個字母要大寫 必須new建構函式名 new bo...

建立物件,建構函式,構造例項

建立物件 doctype html en utf 8 viewport content width device width,initial scale 1.0 document title head 想要得到一系列型別相同結構相似的物件 不管是用字面量還是new object都會得到一些無關聯的物...