Változók a JavaScript nyelvben alapvető fontosságúak az adatok tárolásához és feldolgozásához. Fontos megérteni, hol érvényesek ezek a változók, és mely kódrészletekhez férhetnek hozzá. A különböző típusú változók – globális és helyi – figyelembevételével alapvető jelentőségű a „scope” (láthatósági terület) megértése. Lépjünk be tehát, és nézzük meg, mit is takarnak a globális és helyi változók.

Legfontosabb megállapítások

  • A globális változók a kód minden részén elérhetők, míg a helyi változók csak a saját funkciójukon belül láthatók.
  • Ha egy változót a funkción kívül definiálsz, az globális lesz, míg ha egy funkción belül, az helyi lesz.
  • A kód tiszta és karbantartási szempontból előnyös struktúrája érdekében érdemes a globális változókat a szkript elején deklarálni.

Lépésről lépésre útmutató

Változók definiálása és láthatóságuk

Az első lépésben megnézzük, hogyan hozhatsz létre egy változót, és hogy mit jelent a láthatósága. Ha egy változót a funkción kívül deklarálsz, ahogyan az alábbi példában látható, az globális lesz.

Globális és lokális változók a JavaScript-ben

Itt létrehozunk egy globális változót, amelynek neve meineVariable.

Helyi változókat tartalmazó funkciók létrehozása

Következő lépésben két funkciót hozunk létre. Az egyik funkciót lokálisFunkciónak nevezzük, ahol létrehozunk egy helyi változót. Ez a változó csak a funkció belsejében látható. Definiáljuk a funkciónkat.

A lokálisFunkcióban létrehozol egy helyi változót helyiV néven, amelynek értéke 5, és kiadod.

Funkciók meghívása

Most szeretnénk meghívni a lokálisFunkciót, hogy kiadjuk az 5-öt. Miután a kódban meghívtuk a funkciót, a kimenet a következőképpen néz ki:

A helyi változó láthatóságának tesztelése

Most próbáljuk meg használni a helyi változót helyiV egy másik funkcióban. Meg fogod látni, hogy ez nem működik. Kérjük, végezzünk el egy hívást az másikFunkcióra, és nézzük meg, mi történik.

Hibát kapunk, mert a változó helyiV csak a lokálisFunkción belül látható.

Hibák ellenőrzése a konzolon

Ahhoz, hogy jobban megértsük, miért lép fel a hiba, vizsgáljuk meg a kódot a konzolon. Jobb gombbal kattintva és az "Ellenőrzés" kiválasztásával megnyithatod a DOM-keresőt és a konzolt, hogy elemezd a hibát.

Globális és lokális változók a JavaScript-ben

Itt látható, hogy a helyiV undefined. Ez megerősíti, hogy a változó nem létezik a funkción kívül.

Globális változó definiálása

Most létrehozunk egy globális változót, amelyet mindkét funkcióban használhatunk. Ezt a változót globálisVáltozónak nevezzük, és egy egyszerű szöveget adunk meg neki.

Globális és helyi változók a JavaScript-ben

Most ez a globális változó mindkét funkcióban használható, és a kimenet azonos lesz. Nézzük meg ezt.

Globális és helyi változók a JavaScript-ben

Változók definíciója és meghívási sorrendje

Fontos megjegyezni, hogy a változók és funkciók definíciójának sorrendje döntő jelentőségű. Ha egy globális változót a használata alatt definiálsz, az undefined problémához vezet.

Ez azért van, mert a funkció, amely a globális változóra szüksége van, azt a definíciója előtt hívja meg. Ennek elkerülésére érdemes globális változókat a kód tetején definiálni.

Több a helyi változókról és használatukról

Most egy másik funkcióban ismét létrehozunk egy helyi változót. Ezt helyiVáltozónak nevezzük, és az értékét 12-re állítjuk.

Ez a helyi változó is használható, de csak a saját funkcióján belül, nem más funkciókban. Ha mindkét helyi változót használod, az esetleg türelmet és rendet hozhat a programjaidba, a bonyolultságtól függően.

A koncepciók összegzése

Összefoglalás – A változók láthatósága a JavaScript nyelvben

Összefoglalva megtanultad, hogy a változók definiálásának módja közvetlen hatással van a láthatóságukra és hatókörükre. Mindig ügyelj arra, hová helyezed a változóidat, hogy elkerüld a hibákat.

Gyakran ismételt kérdések

Mik azok a globális változók?A globális változók azok a változók, amelyeket funkciókon kívül deklarálnak, így a teljes szkripten belül elérhetők.

Mik azok a helyi változók?A helyi változók azok a változók, amelyeket egy funkción belül hoznak létre, és csak ezen a funkción belül láthatók.

Hogyan használhatom a globális változókat a legjobban?Érdemes a globális változókat a szkript elején definiálni, hogy a struktúra világos és a karbantartás könnyebb legyen.

Használhatom a helyi változókat a funkciójukon kívül?Nem, a helyi változók csak abban a funkcióban láthatók, amelyben definiálták őket.

Hogyan kezeljem az undefined hibákat?Ügyelj az változók és funkciók definíciójának sorrendjére, hogy biztosan a szükséges változók a használatuk előtt legyenek definiálva.