我有一個圓形的雙向鏈表的漂亮的標準實現。對於數組,我通常使用for each in
來遍歷每個元素,而不必擔心。For Each枚舉自定義數據集類
問題是我的自定義鏈接列表無法通過簡單調用查看。我想,如果在AS3中有一個Proxy類,那麼Adobe團隊提出了一個想法實現的可能性很高,但我不知道......可枚舉類或其他東西?儘管如此,我的搜索結果爲零。
有沒有辦法讓For Each In
與Flash中的自定義類一起工作?不經過的所有對象的屬性,但去通過這個類來表示整個數據集。
我有一個圓形的雙向鏈表的漂亮的標準實現。對於數組,我通常使用for each in
來遍歷每個元素,而不必擔心。For Each枚舉自定義數據集類
問題是我的自定義鏈接列表無法通過簡單調用查看。我想,如果在AS3中有一個Proxy類,那麼Adobe團隊提出了一個想法實現的可能性很高,但我不知道......可枚舉類或其他東西?儘管如此,我的搜索結果爲零。
有沒有辦法讓For Each In
與Flash中的自定義類一起工作?不經過的所有對象的屬性,但去通過這個類來表示整個數據集。
是的,你是對的,請查看Proxy
class。
具體而言,nextName
,nextNameIndex
和nextValue
方法將是感興趣的。
只要你可以很方便的索引列表中的元素,你應該能夠實現for ... in循環。
你應該定製實現hasNext()
和next()
metods,只是通過對象列表
此外,你可以看看迭代器的設計模式http://www.as3dp.com/2008/09/04/the-iterator-pattern-flexible-implementation-of-collections/ –
太棒了!我之前看過Proxy只用於屬性,並且前一段時間閱讀了文檔,所以我很確定這裏沒有這樣的功能。事實證明我錯了。謝謝! – Maurycy
我的榮幸。很高興,我幫了你! –