2012-09-01 36 views

回答

5

你跳過了一步:

var array1 = [[]]; 
array1[0][0] = {}; 

你的聲明只是讓一個一維數組(當然,在JavaScript中所有的數組是一維)。在上面的版本中,我創建了一維數組並將其初始化爲包含另一個一維數組。

它可能是這樣的更清楚:

var array1 = []; 
array1[0] = []; 
array1[0][0] = {}; 

如果你不把另一個數組中的第一現場第一陣列中,那麼試圖引用它在下面會失敗的分配。該語句:

array1[0][0] = {}; 

涉及array1[0]值,以便它可以反過來被用作陣列。因爲你沒有在那裏放置一個數組,那個語句會導致異常。

1

它不起作用,因爲array1[0]undefined(因爲有這樣的指數沒有元素),並undefined不是數組或對象,現在也沒有任何財產,你不能對某些屬性分配valye。