2014-11-03 35 views
1

我來自as3環境,所以我是飛鏢和HTML的大屁股初學者。從飛鏢中的對象訪問列表

我有這個變量

var symbols = [ 
       {"name":"first", 
       "num":[2,2,3] 
       }]; 

我想訪問NUM陣列並將其保存到變量中,我嘗試這樣做:

var symbol = symbols[0]; 
var num = symbol.num; 

我得到

Breaking on exception: Class '_LinkedHashMap' has no instance getter 'num'. 

你能幫我嗎?

回答

2

你有什麼是地圖字符串爲String一個列表。你可以寫這樣的類型:

List<Map<String, String>> symbols; 

很自然你想訪問的是鍵「num」的值。你可以這樣做:

symbols[0]['num'] 

,但它不會自動得到由書寫映射到一個實例變量:

symbol.num 

如果你有這樣的一類,上面會工作:

class Symbol { 
    var num; 
} 
+0

謝謝。有用。 – Tree 2014-11-03 19:22:37

+1

要改變的一件事是你列出的類型。它應該是List >而不是List >。 – Robert 2014-11-05 01:10:12

+0

@羅伯特,謝謝你指出這一點。 – QQQ 2014-11-06 01:26:43

2

它在飛鏢中不起作用。
嘗試:

symbols[0]['num']