數組下標
JScript 中的數組是稀疏的。也就是說,如果一個數組具有三個元素,編號分別為 0、1 和 2,您就可以創建元素 50,而不必擔心從 3 到 49 的參數。如果該數組有一個自動的 length 變量,(請參閱內部對象了解有關數組長度的自動監控的說明),該 length 變量被設為 51,而不是 4。當然您可以創建各元素的編號之間沒有間隙的數組,不過沒有必要這樣做。
在 JScript 中,對象和數組幾乎相同。兩個主要差別是對象沒有自動長度屬性,而數組沒有對象的屬性和方法。
數組尋址
使用方括號“[]”來尋址數組。方括號中是一個數值或一個值為整數的表達式。下面的示例假定在腳本的其他地方已定義了entryNum 變量,且已賦值。
theListing = addressBook[entryNum];
theFirstLine = theListing[1];
將對象作為關聯數組
通常,使用點運算符“.”訪問對象的屬性。例如,
myObject.aProperty
在這里,屬性名稱是一個標識符。也可以用索引運算符“[]”訪問對象的屬性。在這里,是把對象看作一個關聯數組。關聯數組是一種數據結構,它可以動態地將任意的數據的值與任意的字符串相關聯。例如,
myObject["aProperty"] // 與上面相同。
盡管索引運算符更多地用于訪問數組元素,當用于對象時,索引總是以字符串文字表示的屬性名稱。
注意訪問對象屬性的兩種方法的重要差異。
運算符 屬性名稱作為 對屬性名稱的處理
點“.” 標識符 不能作為數據處理
索引“[]” 字符串文字 能被作為數據處理
在運行之前并不知道屬性名稱時,這個差異會有用(比如基于用戶輸入構造對象時)。要想從一個關聯數組提取所有的屬性,必須用 for … in 循環。
更多信息請查看IT技術專欄