转自 : http://bbs.9ria.com/forum.php?highlight=function+apply&mod=viewthread&tid=106936
我们在调用函数的时候,有时可能会希望动态的来调整参数。如
这样的话,10,20,30这三个参数都是写定在程序中的。有时,我们希望由AS3自己来触发这个函数,即动态的提供10,20,30这个些参数。怎么办呢?这时候就会用到apply方法: 这样运行,我们第一次编写的代码,结果是一致的。但是不同的是,三个参数我们是以一个数组来进行传递的,因此,我们也可以用某一个变量来代替这个数组,如 有了变量,我们就可以动态的来修改参数了。那apply的第一个参数是做什么用的呢?实际上,他是在函数内部,this的引用目标。我们来看下面的代码: 可以发现,输出结果为 也就是说。默认情况下,函数内部的this并不是我们所在的这个类,而如果我们传递了这个参数: 你就会发现,输出结果变成了 现在,函数内部的this变成了我们的文档类Main了。学到一招了没:)