如何检查function是否存在?

如何检查jquery上是否有函数,但函数是否在另一个.js文件中?

validation.js:

if ($.isFunction('payment')) { $('[data-numeric]').payment('restrictNumeric'); $('.cc-number').payment('formatCardNumber'); $('.cc-exp').payment('formatCardExpiry'); $('.cc-cvc').payment('formatCardCVC'); } 

这是假的,因为func付款在payments.js中。

试试这样吧

 if (typeof payment === "function") { // Do something } 

问题解决了。 其作品:

 if ($.fn.payment) { //do something } 

尝试检查如下,

  if (typeof payment !== 'undefined' && $.isFunction(payment)) { $('[data-numeric]').payment('restrictNumeric'); $('.cc-number').payment('formatCardNumber'); $('.cc-exp').payment('formatCardExpiry'); $('.cc-cvc').payment('formatCardCVC'); } 
 if (typeof yourFunctionName == 'function') { yourFunctionName(); } 

它非常适合Blogger。

您可以使用window检查函数是否存在

例如

 var fn = window['NameOfTheFunction']; if(typeof fn === 'function') { doSomething(); } 

如果您在payment.js中的函数是自包含函数的一部分,则需要将其设置为,以便窗口对象可以通过在自包含函数中添加它来“看到”它:

 window.NameOfTheFunction = NameOfTheFunction;