4 回答

TA貢獻1785條經(jīng)驗 獲得超8個贊
終于找到這個知識點的出處了,見這里
對象屬性索引
在 JavaScript 1.0 中,你可以通過名稱或序號訪問一個屬性。但是在 JavaScript 1.1 及之后版本中,如果你最初使用名稱定義了一個屬性,則你必須通過名稱來訪問它;而如果你最初使用序號來定義一個屬性,則你必須通過索引來訪問它。
這個限制發(fā)生在你通過構(gòu)造函數(shù)創(chuàng)建一個對象和它的屬性(就象我們之前通過 Car 對象類型所做的那樣)并且顯式地定義了單獨的屬性(如 myCar.color = "red")之時。如果你最初使用索引定義了一個對象屬性,例如 myCar[5] = "25",則你只可能通過 myCar[5] 引用它。
這條規(guī)則的例外是從與HTML對應的對象,例如 forms 數(shù)組。對于這些數(shù)組的元素,你總是既可以通過其序號(依據(jù)其在文檔中出現(xiàn)的順序),也可以按照其名稱(如果有的話)訪問它。舉例而言,如果文檔中的第二個 <form> 標簽有一個 NAME 屬性且值為 "myForm",訪問該 form 的方式可以是 document.forms[1],document.forms["myForm"]或 document.myForm。
var myCar=new Object();
myCar.make="Ford";
myCar.model= "Mustang";
myCar.year = 1969;
myCar["hum"] = 100;
console.log(myCar["0"]);
console.log(myCar["1"]);
console.log(myCar["2"]);
console.log(myCar["hum"]);
console.log(myCar.hum);

TA貢獻1828條經(jīng)驗 獲得超6個贊
訪問對象的屬性的方法有兩種:
Obj.attr
Obj[attr]
有時候第一種是沒辦法執(zhí)行的,我舉個栗子:
所以,提供了第二種方法來獲取屬性的值。
添加回答
舉報