[問題] 如何利用迴圈將外部資料填入陣列?

看板Flash作者 (一_一)時間9年前 (2015/10/01 11:13), 編輯推噓1(109)
留言10則, 5人參與, 最新討論串1/1
大家好 小弟目前正看書自學AS3 最近遇到一個問題 要如何利用迴圈將外部資料填入陣列當中? 外部資料是長這樣:id1=S001&id2=S002&id3=S003 目前已可取得外部資料,程式碼如下 var url:String = "score.txt"; var urlRQ:URLRequest = new URLRequest(url); var LDR:URLLoader = new URLLoader(urlRQ); LDR.dataFormat = URLLoaderDataFormat.VARIABLES; LDR.addEventListener(Event.COMPLETE,getdata); function getdata(event:Event) { var score:URLVariables = new URLVariables(LDR.data); trace(score.id1,score.id2,score.id3); } trace 之後可以輸出 S001、S002、S003 但要將這些變數填入陣列當中遇到了問題 我的寫法如下: var data1:Array = new Array(3); for (var i:int=1; i<=3; i++) { data1[i] = this["score.id" + i]; } 之後將陣列輸出卻是空的 請問是哪裡寫錯了呢? 請各位幫忙指點一下,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.255.73.238 ※ 文章網址: https://www.ptt.cc/bbs/Flash/M.1443669188.A.6A0.html

10/01 12:57, , 1F
score["id"+i]
10/01 12:57, 1F

10/02 00:30, , 2F
樓上正解
10/02 00:30, 2F

10/02 09:42, , 3F
已經可以了,非常感謝,不過這邊為什麼不需要用到"."
10/02 09:42, 3F

10/02 09:43, , 4F
"."使用的時機應該是怎麼樣呢? 謝謝。
10/02 09:43, 4F

10/02 23:29, , 5F
this.score.id1 = score.id1 this有點多餘
10/02 23:29, 5F

10/02 23:29, , 6F
score.id1 = score["id1"]
10/02 23:29, 6F

10/02 23:30, , 7F
其實是一樣的,差別就在於後面可以組合,前面不行
10/02 23:30, 7F

10/02 23:30, , 8F
因為flash所有東西基底類別都是object(物件)
10/02 23:30, 8F

10/02 23:31, , 9F
object["xx"]等於呼叫他底下的子物件跟屬性
10/02 23:31, 9F

10/04 00:11, , 10F
如果可已直接取json字串再直接轉陣列
10/04 00:11, 10F
文章代碼(AID): #1M3AJ4QW (Flash)
文章代碼(AID): #1M3AJ4QW (Flash)