我是javascript開發新手。 我有類似的東西:如何將JavaScript字典推送到多維數組或其他字典?
var array1=[];
array1[0][0]={};
var dic={'title':'111','url':'222'};
array1[0][0]=dic;
但它沒有工作? 有什麼問題? 如何將字典推送到多維數組或其他字典?
我是javascript開發新手。 我有類似的東西:如何將JavaScript字典推送到多維數組或其他字典?
var array1=[];
array1[0][0]={};
var dic={'title':'111','url':'222'};
array1[0][0]=dic;
但它沒有工作? 有什麼問題? 如何將字典推送到多維數組或其他字典?
你跳過了一步:
var array1 = [[]];
array1[0][0] = {};
你的聲明只是讓一個一維數組(當然,在JavaScript中所有的數組是一維)。在上面的版本中,我創建了一維數組並將其初始化爲包含另一個一維數組。
它可能是這樣的更清楚:
var array1 = [];
array1[0] = [];
array1[0][0] = {};
如果你不把另一個數組中的第一現場第一陣列中,那麼試圖引用它在下面會失敗的分配。該語句:
array1[0][0] = {};
涉及取的array1[0]
值,以便它可以反過來被用作陣列。因爲你沒有在那裏放置一個數組,那個語句會導致異常。
它不起作用,因爲array1[0]
是undefined
(因爲有這樣的指數沒有元素),並undefined
不是數組或對象,現在也沒有任何財產,你不能對某些屬性分配valye。