Denne artikkelen vil beskrive JavaScript “-funksjonen ikke definert feil” mens den er definert.
JavaScript -funksjon ikke definert feil (men den er definert)
Noen ganger er funksjonen definert i koden, men likevel kan du møte følgende feil:
Det er to hovedårsaker til at feilen ovenfor oppstår etter å ha definert funksjonen, som er listet opp nedenfor:
Årsak 1: Funksjonen er feilstavet eller har feil kapitalisering
Noen ganger kalles funksjonen med feil stavemåter. Siden JavaScript er et case-følsomt språk, kunne ikke JavaScript-tolken finne det og kaste en "funksjon ikke definert”Feil.
Eksempel
Først vil vi definere en funksjon "Summ”Det returnerer summen av to tall”en”Og“b”:
funksjon Summ (a, b)Ring funksjonen “Summ" som "sum”Ved å passere tall”4”Og“7”:
konsoll.Logg (sum (4, 7))Det vil kaste en feil “Summen er ikke definert”:
Hvordan fikse det?
For å fikse denne feilen, sørg for at funksjonsnavnet er stavet riktig og har riktig kapitalisering:
konsoll.Logg (Summ (4, 7));Nå, funksjonen “Summ”Har blitt ringt og trykker ut summen av to tall”4”Og“7”:
Årsak 2: Funksjon er definert i et annet omfang
I JavaScript har hver funksjon sitt omfang, og en funksjon kan bare få tilgang til variabler og funksjoner som er definert innenfor sitt eget omfang. Hvis en funksjon er definert i et annet omfang, kan det hende at den ikke er tilgjengelig for det nåværende omfanget, noe som resulterer i et "funksjon ikke definert”Feil.
Eksempel
Definere en funksjon “sum()”Med to parametere”en”Og“b”Inne i funksjonen”skrive ut()”:
Funksjonsutskrift ()Ring funksjonen “sum()”:
sum (5, 10);Det gir en feil fordi sum () er definert inne i utskriften () -funksjonen, men får tilgang til utenfor omfanget:
Hvordan fikse det?
Forsikre deg om at funksjonen er definert i riktig omfang og kan nås der det blir kalt. For eksempel, hvis funksjonen er definert i en annen funksjon, kan det hende at den ikke er tilgjengelig utenfra.
Ring summen () inne i print () -funksjonen etter å ha definert den:
Funksjonsutskrift ()Ring print () -metoden:
skrive ut();Produksjon
Eller du kan også definere funksjon separat og kalle det i en annen funksjons omfang som følger:
funksjonssum (a, b)Her vil vi kalle summen () inne i print () -funksjonen:
Funksjonsutskrift ()Ring metoden Print () for å utføre funksjonen “sum()”:
skrive ut();Summen av to tall “5”Og“10”Har blitt vist:
Vi har diskutert årsakene og løsningene for JavaScript "Funksjon ikke definert feil”(Men det er definert).
Konklusjon
Det er to hovedårsaker til at “funksjon ikke definert”Feil oppstår etter å ha definert funksjonen, for eksempel“Funksjonen er feilstavet eller har feil kapitalisering" eller "Funksjon er definert i et annet omfang”. Denne artikkelen definerte årsakene og løsningene for JavaScript “Funksjon ikke definert feil” (men den er definert).