Fonction JavaScript non définie Erreur

Fonction JavaScript non définie Erreur
En JavaScript, "fonction non définie"Est une erreur courante qui se produit lorsque le programme essaie d'utiliser une fonction qui n'a pas été déclarée ou définie dans la portée actuelle. Ce message d'erreur peut être déroutant car parfois la fonction est réellement définie dans le code, mais elle entraîne toujours l'erreur.

Cet article décrira la «fonction de fonction non définie» JavaScript alors qu'elle est définie.

Fonction JavaScript non définie Erreur (mais elle est définie)

Parfois, la fonction est définie dans le code, mais vous pouvez quand même faire face à l'erreur suivante:

Il y a deux raisons principales pour lesquelles l'erreur ci-dessus se produit après la définition de la fonction, qui sont énumérées ci-dessous:

  • La fonction est mal orthographiée ou a une capitalisation incorrecte.
  • La fonction est définie dans une portée différente.

Raison 1: La fonction est mal orthographiée ou a une capitalisation incorrecte

Parfois, la fonction est appelée avec des orthographes incorrectes. Comme JavaScript est un langage sensible à la casse, l'interprète JavaScript n'a pas pu trouver cela et lancer un «fonction non définie" erreur.

Exemple

Tout d'abord, nous définirons une fonction "sommaire"Cela renvoie la somme de deux nombres"un" et "b»:

fonction sommant (a, b)
retourner a + b;

Appelez la fonction "sommaire" comme "somme"En passant des nombres"4" et "7»:

console.journal (somme (4, 7))

Il lancera une erreur "la somme n'est pas définie»:

Comment le réparer?

Pour corriger cette erreur, assurez-vous que le nom de la fonction est correctement orthographié et a la capitalisation correcte:

console.journal (résumé (4, 7));

Maintenant, la fonction "sommaire"A été appelé avec succès et imprimer la somme de deux nombres"4" et "7»:

Raison 2: La fonction est définie dans une portée différente

En JavaScript, chaque fonction a sa portée et une fonction ne peut accéder qu'à des variables et des fonctions définies dans sa propre portée. Si une fonction est définie dans une portée différente, elle peut ne pas être accessible à la portée actuelle, résultant en un «fonction non définie" erreur.

Exemple

Définir une fonction "somme()"Avec deux paramètres"un" et "b"À l'intérieur de la fonction"imprimer()»:

fonction print ()
Sum de fonction (a, b)
console.journal (a + b);

Appelez la fonction "somme()»:

somme (5, 10);

Il donne une erreur car sum () est défini à l'intérieur de la fonction print () mais accessible à l'extérieur depuis la portée:

Comment le réparer?

Assurez-vous que la fonction est définie dans la portée appropriée et peut être accessible à partir de l'endroit où il est appelé. Par exemple, si la fonction est définie dans une autre fonction, elle peut ne pas être accessible depuis l'extérieur.

Appelez la sum () à l'intérieur de la fonction print () après l'avoir définie:

fonction print ()
Sum de fonction (a, b)
console.journal (a + b);

somme (1, 4);

Appelez la méthode print ():

imprimer();

Sortir

Ou vous pouvez également définir la fonction séparément et l'appeler dans la portée d'une autre fonction comme suit:

Sum de fonction (a, b)
console.journal (a + b);

Ici, nous appellerons la sum () à l'intérieur de la fonction print ():

fonction print ()
somme (5, 10);

Appelez la méthode print () pour exécuter la fonction "somme()»:

imprimer();

La somme de deux nombres "5" et "dix«Ont été affichés:

Nous avons discuté des raisons et des solutions pour le JavaScript «Fonction non définie Erreur»(Mais c'est défini).

Conclusion

Il y a deux raisons principales pour lesquelles le «fonction non définie«L'erreur se produit après la définition de la fonction, comme«La fonction est mal orthographiée ou a une capitalisation incorrecte" ou la "La fonction est définie dans une portée différente". Cet article a défini les raisons et les solutions pour la «fonction de fonction non définie» JavaScript (mais elle est définie).