在For循环中创建多个值[AS3]

时间:2014-03-30 12:01:27

标签: actionscript-3 for-loop

我正在尝试使用for循环创建多个Numbers。

var sasutu1x : Number = Number(sasutu1.text);
var sasutu2x : Number = Number(sasutu2.text);
var sasutu3x : Number = Number(sasutu3.text);
var sasutu4x : Number = Number(sasutu4.text);
var sasutu5x : Number = Number(sasutu5.text);
var sasutu6x : Number = Number(sasutu6.text);

我的解决方案:

var i:int;
for (i = 0; i < 7; i++)
{
var this["sasutu" i + "x"] : Number = Number(["sasutu" + i].text);
}

谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

更好的解决方案是使用Vector。

var vec:Vector.<int> = new Vector.<int>();
for (var i:int = 0; i < 7; i++)
{
    vec.push(Number(["sasutu"+i].text));
}

答案 1 :(得分:0)

您可以使用Vector,或者如果您希望稍后通过名称获得对该数字的引用,您也可以使用Dictionary。

var i:int;
var sasutuDict:Dictionary = new Dictionary(true);

for (i = 0; i < 7; i++)
{
    sasutuDict["sasutu" i + "x"] = Number(["sasutu" + i].text);
}

字典的一个优点是,您甚至可以这样做:

for (i = 0; i < 7; i++)
{
     var sasutuTexField:TextField =  this["sasutu" + i];
     sasutuDict[sasutuTexField] = Number(sasutuTexField.text);
}

意味着您可以将字典的键作为文本字段本身。