Funcția JavaScript nedefinită Eroare (DAR ESTE DEFINITĂ)

Functia Javascript Nedefinita Eroare Dar Este Definita



În JavaScript, „ funcția nu este definită ” este o eroare comună care apare atunci când programul încearcă să folosească o funcție care nu a fost declarată sau definită în domeniul curent. Acest mesaj de eroare poate fi confuz, deoarece uneori funcția este de fapt definită în cod, dar tot duce la eroare.

Acest articol va descrie „eroarea funcției nedefinite” JavaScript în timp ce este definită.

Funcția JavaScript nedefinită Eroare (DAR ESTE DEFINITĂ)

Uneori, funcția este definită în cod, dar totuși, vă puteți confrunta cu următoarea eroare:









Există două motive principale pentru care eroarea de mai sus apare după definirea funcției, care sunt enumerate mai jos:



Motivul 1: Funcția este scrisă greșit sau are majuscule incorecte

Uneori, funcția este apelată cu ortografii incorecte. Deoarece JavaScript este un limbaj sensibil la majuscule și minuscule, interpretul JavaScript nu a putut găsi asta și a arunca un „ funcția nu este definită ” eroare.





Exemplu

Mai întâi, vom defini o funcție „ sum „care returnează suma a două numere” A ' și ' b ”:

funcția sum ( a, b ) {

întoarcere A + b ;

}

Apelați funcția „ sum ' la fel de ' sumă „prin trecerea numerelor” 4 ' și ' 7 ”:



consolă. Buturuga ( sumă ( 4 , 7 ) )

Va arunca o eroare „ suma nu este definită ”:

Cum se remediază?

Pentru a remedia această eroare, asigurați-vă că numele funcției este scris corect și are majusculele corecte:

consolă. Buturuga ( sum ( 4 , 7 ) ) ;

Acum, funcția „ sum ” a fost apelat cu succes și tipăriți suma a două numere ” 4 ' și ' 7 ”:

Motivul 2: Funcția este definită într-un domeniu diferit

În JavaScript, fiecare funcție are domeniul său de aplicare, iar o funcție poate accesa doar variabile și funcții care sunt definite în propriul domeniu. Dacă o funcție este definită într-un domeniu diferit, este posibil să nu fie accesibilă domeniului curent, rezultând un „ funcția nu este definită ” eroare.

Exemplu

Definiți o funcție „ sumă() „cu doi parametri” A ' și ' b ” în cadrul funcției ” imprimare() ”:

funcția de imprimare ( ) {

sumă funcției ( a, b ) {

consolă. Buturuga ( A + b ) ;

}

}

Apelați funcția „ sumă() ”:

sumă ( 5 , 10 ) ;

Oferă o eroare deoarece sum() este definită în interiorul funcției print() dar accesată în afara domeniului:

Cum se remediază?

Asigurați-vă că funcția este definită în domeniul adecvat și poate fi accesată de unde este apelată. De exemplu, dacă funcția este definită în interiorul unei alte funcții, este posibil să nu fie accesibilă din exterior.

Apelați sum() în interiorul funcției print() după ce ați definit-o:

funcția de imprimare ( ) {

sumă funcției ( a, b ) {

consolă. Buturuga ( A + b ) ;

}

sumă ( 1 , 4 ) ;

}

Apelați metoda print():

imprimare ( ) ;

Ieșire

Sau puteți, de asemenea, să definiți funcția separat și să o apelați în domeniul de aplicare al unei alte funcții, după cum urmează:

sumă funcției ( a, b ) {

consolă. Buturuga ( A + b ) ;

}

Aici, vom apela sum() în interiorul funcției print():

funcția de imprimare ( ) {

sumă ( 5 , 10 ) ;

}

Apelați metoda print() pentru a executa funcția „ sumă() ”:

imprimare ( ) ;

Suma a două numere” 5 ' și ' 10 ” au fost afișate:

Am discutat motivele și soluțiile pentru JavaScript „ eroare de funcție nedefinită ” (dar este definit).

Concluzie

Există două motive principale pentru care „ funcția nu este definită ” eroarea apare după definirea funcției, cum ar fi „ funcția este scrisă greșit sau are majuscule incorecte ' sau ' funcția este definită într-un domeniu diferit ”. Acest articol a definit motivele și soluțiile pentru „funcția nu este definită eroare” JavaScript (dar este definită).