使用随机生成的函数替换数组中的变量。 AS3

时间:2013-12-12 21:36:23

标签: arrays actionscript-3

在as3中我有以下代码:

var index1
var index2
var num1, num2, num3;
num1 = 1;
num2 = 1;


var nombres:Array =  new Array(
"Ana", "Pedro", "María", "Lily", "Juan", "Rita", "Gonzalo", "Fernanda"
);

var ejercicios_Suma: Array = new Array(
num1+", "+num2+" name:"+nombres[1]
);


dialog();
function dialog (){
num1 = 25
num2 = 26

trace ("********** "+num1+"***** "+num2)    
trace (ejercicios_Suma[0])
}

我无法想象如何调用对话框函数中生成的“num1”,因为变量被代码外部的变量替换。

任何指针/解决方案?

提前致谢。

-----编辑如下,更好地解释问题----

现在,跟踪结果如下:      * ** 25 **** 26     1,1名称:佩德罗

我需要的是拥有以下内容:      * ** 25 **** 26     25,26名称:Pedro< ---这些是在对话框功能中生成的值,而不是在函数外部声明的值。

1 个答案:

答案 0 :(得分:0)

在这一行中,

var ejercicios_Suma: Array = new Array(num1 + ", " + num2 + " name:" + nombres[1]);

您正在创建一个只包含一个元素的数组,一个值为(num1 + ", " + num2 + " name:" + nombres[1])的字符串。在创建该字符串时,num1和num2等于1.因此,该数组恰好等于["1, 1, name:Pedro"]

即使您返回并编辑num1和num2,也不会更新在该数组中创建的字符串。

我根本无法告诉您要使用此代码完成什么,因此很难说如何修复代码。但是,这应该可以解释为什么你会看到你所看到的。