繁体   English   中英

JavaScript'不是'功能'与'预期功能'?

[英]JavaScript 'is not a function' vs. 'expected function'?

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

var i = 'foo';
i();

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

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

' 期望函数 :function(){}'

我试图弄清楚这两个错误究竟是如何不同的,或者,从另一个角度来看,如何编写一个触发“预期函数”错误的最小代码片段。

我尝试摆弄回调,并调用/应用,但没有一个触发这个。 任何人都可以解释如何重现此错误?

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

var i = 'foo';

if (!$.isFunction(i)){
    throw 'expected function: function(){}';
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM