相关疑难解决方法(0)

为什么我的JavaScript函数有时"未定义"?

我调用我的JavaScript函数.为什么我有时会得到错误"myFunction是没有定义",当它定义?

例如.即使在这个例子中,我偶尔会得到'copyArray未定义':

function copyArray( pa ) {
    var la = [];
    for (var i=0; i < pa.length; i++)
        la.push( pa[i] );
    return la;
}

Function.prototype.bind = function( po ) {
    var __method = this;
    var __args = [];

    // Sometimes errors -- in practice I inline the function as a workaround.
    __args = copyArray( arguments );

    return function() {
        /* bind logic omitted for brevity */
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,copyArray 就在那里定义,因此这不能与脚本文件加载的顺序有关.

我一直在难以解决的情况下得到这个,其中调用函数位于应该在被调用函数之后加载的另一个文件中.但这是我能提出的最简单的案例,似乎也是同样的问题.

它不会100%发生,所以我怀疑某种与负载时序相关的问题.但我不知道是什么.

@Hojou:这是问题的一部分.我现在收到此错误的函数本身就是我的addLoadEvent,它基本上是公共库函数的标准版本. …

javascript

39
推荐指数
2
解决办法
16万
查看次数

标签 统计

javascript ×1