4

在当前的 Chrome 中,如果我这样做:

var i = 'foo';
i();

我得到一个错误'string is not a function'。如果i是数字、未定义等,我会收到类似的错误。

但是,从一些现实生活中更复杂的代码中,有时我会看到不同的错误:

'预期功能:函数(){}'

我试图弄清楚这两个错误到底有什么不同,或者,换个角度来看,如何编写一个最小的代码片段来触发“预期函数”错误。

我尝试摆弄回调,并调用/应用,但没有一个会触发这个。谁能解释如何重现此错误?

4

1 回答 1

0

没有规范应该是什么错误消息。因此,每个供应商都实现了自己的。统一这一点的唯一方法是自己验证数据并抛出您期望的错误。

var i = 'foo';

if (!$.isFunction(i)){
    throw 'expected function: function(){}';
}
于 2013-05-17T18:58:13.357 回答