Je veux vérifier si une fonction existe ou non avant d'essayer de l'exécuter. Voici mon code:
if ($.isFunction(myfunc())) {
console.log("function exist, run it!!!");
}
Cependant, lorsque la fonction n'est pas disponible, j'ai l'erreur:
myfunc n'est pas défini
Comment puis-je faire la détection? Voici mon test de travail: http://jsfiddle.net/3m3Y3/
En mettant ()
après le nom de la fonction, vous essayez de l’exécuter directement à la première ligne.
Au lieu de cela, vous devriez simplement utiliser le nom de la fonction sans l'exécuter:
if ($.isFunction(myfunc)) {
Cependant - Si myfunc
n'est pas une fonction et n'est pas une autre variable définie, une erreur sera toujours renvoyée, mais une autre . Quelque chose comme myfunc is not defined
.
Vous devriez vérifier que le nom existe, puis vérifier que c'est une fonction, comme ceci:
if (typeof myfunc !== 'undefined' && $.isFunction(myfunc)) {
Exemple de travail ici: http://jsfiddle.net/sXV6w/
essaye ça
if(typeof myfunc == 'function'){
alert("exist");
}else{
alert("not exist");
}