Как проверить, существует ли функция?

Как проверить, является ли функция 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.

Ответ 1

проблема решена. его работы:

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

Ответ 2

Попробуйте это

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

Ответ 3

Попробуйте проверить, как показано ниже:

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

Ответ 4

if (typeof yourFunctionName == 'function') { 
  yourFunctionName(); 
}

Он отлично работает для Blogger.

Ответ 5

Вы можете проверить, существует ли функция с помощью window

Например

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

Если ваша функция в файле payment.js является частью автономной функции, вам нужно установить ее так, чтобы объект окна мог "видеть" ее, добавив это в свою автономную функцию:

window.NameOfTheFunction = NameOfTheFunction;