以文本方式查看主题

-  ╋艺 镇╋  (http://wdystv.com/bbs/index.asp)
--  ┣◇FLASH交流  (http://wdystv.com/bbs/list.asp?boardid=5)
----  在flash中eval()代码是什么意思?  (http://wdystv.com/bbs/dispbbs.asp?boardid=5&id=3207)

--  作者:admin
--  发布时间:2011/9/26 23:48:18
--  在flash中eval()代码是什么意思?
这个在AS2.0中会用得到,但在面向对象的AS3的编程中,已经用的很少了,eval()之意就是把()中的字符串组合算式,变为动态变量。
比如舞台上有个影片的实例名为"Movie1_mc",让这个影片的X值设置为100,可以写为Movie1_mc.x=100,但也可以按如下写法使用evel方法:
var a:uint = 1;
eval("Movie"+a+"_mc").x = 100;
上例没必要用eval,但当舞台上有100个这样的影片,且按规则排布时,且实例名比较规则时,就用得上了,比如:
Movie1_mc,Movie2_mc,Movie3_mc,Movie4_mc……Movie100_mc
定义他们不能写100行代码,所以eval出场,如下:
for(var i=0;i<100;i++)
{
eval("Movie"+i+"_mc").y = 10*i; 
}
这样就很快了。


http://zhidao.baidu.com/question/236436157.html