[问题] 如何利用循环将外部资料填入阵列?

楼主: dragons1988 (一_一)   2015-10-01 11:13:05
大家好
小弟目前正看书自学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];
}
之后将阵列输出却是空的
请问是哪里写错了呢? 请各位帮忙指点一下,谢谢。
作者: zpl   2015-10-01 12:57:00
score["id"+i]
作者: silase0201 (kk)   2015-10-02 00:30:00
楼上正解
楼主: dragons1988 (一_一)   2015-10-02 09:42:00
已经可以了,非常感谢,不过这边为什么不需要用到".""."使用的时机应该是怎么样呢? 谢谢。
作者: KawasumiMai (さあ、死ぬがいい)   2015-10-02 23:29:00
this.score.id1 = score.id1 this有点多余score.id1 = score["id1"]其实是一样的,差别就在于后面可以组合,前面不行因为flash所有东西基底类别都是object(物件)object["xx"]等于呼叫他底下的子物件跟属性
作者: jones86723 (jones)   2015-10-04 00:11:00
如果可已直接取json字串再直接转阵列

Links booklink

Contact Us: admin [ a t ] ucptt.com