Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 将参数传递给函数引用?_Flash_Actionscript 3 - Fatal编程技术网

Flash 将参数传递给函数引用?

Flash 将参数传递给函数引用?,flash,actionscript-3,Flash,Actionscript 3,我正在尝试编写一个性能测试函数,它可以接受任何函数,运行X次,并说出该函数在AS3中运行的时间。如果一个函数不带任何参数,我已经让它工作得很好了,但是它会出现错误 代码如下: public static function testFunction(targetFunction : Function, object : Object, ... parameters) { var iterations : int = 10000; var i : int = 0; var t

我正在尝试编写一个性能测试函数,它可以接受任何函数,运行X次,并说出该函数在AS3中运行的时间。如果一个函数不带任何参数,我已经让它工作得很好了,但是它会出现错误

代码如下:

public static function testFunction(targetFunction : Function, object : Object, ... parameters)
{
    var iterations : int = 10000;
    var i : int = 0;
    var time0 : Number = 0;
    var time1 : Number = 0;

    if (parameters.length == 0)
    {
        time0 = getTimer();

        for (i = 0; i < iterations; ++i)
        {
            targetFunction();
        }

        time1 = getTimer();
    }
    else
    {
        time0 = getTimer();

        for (i = 0; i < iterations; ++i)
        {
            targetFunction.call(object, parameters);
        }

        time1 = getTimer();
    }

    trace("Took " + (time1 - time0) + "ms to complete " + iterations + " iterations");
}
公共静态函数testFunction(targetFunction:function,object:object,…参数)
{
var迭代次数:int=10000;
变量i:int=0;
变量时间0:Number=0;
变量时间1:Number=0;
如果(parameters.length==0)
{
time0=getTimer();
对于(i=0;i
这很好: testFunction(timelineMethod)

但是像这样的事情: testFunction(game.addGameState,game,gameState);//游戏状态将是参数

抛出这个: TypeError:错误#1034:类型强制失败:无法将[]@2f46491转换为g2d.GameState。 在功能上/

看起来游戏或游戏状态不是有效的实例,但它们确实是。所以我假设它不知何故不知道要测试的方法属于什么对象,也不知道它抛出了这个错误


有什么想法吗?

函数。调用
需要一个参数列表,与正常调用函数一样

如果要传递参数数组,应使用
函数。改为应用