Programmeerimise valdkonnas on arusaam kehtivusväljadest (Scopes) hädavajalik, et arendada tõhusat ja puhtat tarkvara. JavaScriptis on erinevaid kehtivusvälju, sealhulgas funktsionaalsed kehtivusväljad. Selles juhendis uurid selle kontseptsiooni aluseid ja saad kasulikke näiteid parema illustreerimise jaoks.

Peamised järeldused

  • Kehtivusala määrab, kus muutujaid programmides eksisteerib.
  • Funktsionaalsed kehtivusväljad loovad kohalikke muutujaid, mis ei ole funktsiooni väljast kättesaadavad.
  • Globaalmuutujad on kogu skriptis kergesti kättesaadavad, mis võib põhjustada võimalikke nimerikkumisi.
  • Muutujate elutsükkel on seotud nende kasutamisega funktsioonide sees.

Samm-sammuline juhend

1. Lihtne näide kehtivusala kohta

Selleks, et aru saada funktsionaalsest kehtivusväljast, alustame lihtsast funktsioonist. Selles funktsioonis deklareerid kohaliku muutuja. See on kehtiv ainult funktsiooni sees.

Siin toimub arvutamine ja tulemus kuvatakse HTML-dokumendis. Väljund on 25, kui kutsud funktsiooni.

Mõista JavaScripti kehtivusala

2. Katse kohalikule muutuja juurde pääseda

Kui proovid funktsiooni väljast kohalikule muutuja juurde pääseda, siis kohtad probleeme. See tähendab, et sa ei saa muutuja ergebnisse funktsiooni väljast pöörduda.

Kuna muutuja ergebnis ei eksisteeri, saad viga, kui proovid seda kutsuda. See on oluline märk kehtivusala kohta.

Mõista JavaScriptis kehtivusala

3. Globaalsete muutuja loomine

Et muuta muutuja globaalseteks kergesti kättesaadavaks, saad selle deklareerida väljaspool funktsiooni. Selline muutuja on kogu skriptis kergesti kättesaadav.

function berechnung() { ergebnis = 5 * 5; // Muudab globaalset muutuja }

Siin luuakse muutuja ergebnis globaalsetes nimede ruumides. Kui nüüd funktsiooni kutsud, siis sead muutuja ergebnis väärtuseks 25 ja saad sellele väärtusele juurdepääsu ka funktsiooni väljast.

Mõistke JavaScriptis kehtivusvaldkondi

4. Erinevus kohaliku ja globaalse nimede ruumi vahel

Oluline erinevus on selles, kus muutujaid deklareeritakse. Kohalikud muutujaid, mis deklareeritakse funktsiooni sees, eksisteerivad ainult funktsiooni täitmise ajal. Kui need on globaalsed, on nad kogu skriptis nähtavad.

Kui soovid muuta kohalikku muutuja, mis eksisteerib globaalses nimede ruumis, pead veenduma, et juurdepääs on õige.

5. Muutujate kaudne deklareerimine

Oluline on märkida, et saad muutuja deklareerida ka ilma võtmesõnata let või var. Sel juhul on muutuja samuti globaalne.

Kuigi see töötab, ei ole see soovitatav lähenemine, kuna see muudab sinu koodi segaseks ja võib põhjustada ootamatuid konflikte.

6. Muutujate elutsükkel

Muutuja elutsükkel on veel üks oluline kontseptsioon. Kohalikud muutujaid eksisteerivad ainult seni, kuni funktsioon on aktiivne. Funktsiooni lõppedes kustutatakse kohalik muutuja.

Mõista JavaScripti kehtivusala

7. Selgus läbi selge deklareerimise

Selleks, et muuta oma skripti selgemaks, peaksid muutujaid alati selgelt deklareerima. See aitab sul hoida ülevaadet, kus ja kui palju muutujaid eksisteerib, ning takistab tahtmatute globaalsete muutujate tekkimist.

8. Kokkuvõte kehtivusväljadest

Kehtivusväljad JavaScriptis on fundamentaalsed, et mõista, kuidas muutujaid funktsioonide sees käituvad. JavaScript eristab kohalikke ja globaalseid nimede ruume. Sügav arusaam sellest kontseptsioonist on oluline, et programmeerida puhtalt ja efektiivselt.

Kokkuvõte – Kehtivusväljade alused JavaScriptis

Kehtivusväljade mõistmine JavaScriptis on tõhusaks programmeerimiseks väga oluline. Mõistdes kohalike ja globaalsete muutujaid, saad luua tõhusat ja hooldatavat koodistruktuuri.

Korduma kippuvad küsimused

Mis on kehtivusväljad?Kehtivusväljad määravad, kus muutujaid programmis eksisteerib ja millised on nende juurdepääsute õigused.

Mis on erinevus kohalike ja globaalsete muutujate vahel?Kohalikud muutujaid eksisteerivad ainult funktsiooni sees, samas kui globaalsete muutujaid on kogu skriptis kergesti kättesaadavad.

Kaua kohalike muutujate eksisteerivad?Kohalikud muutujaid eksisteerivad ainult funktsiooni täitmise ajal, kus nad on deklareeritud.

Miks peaks muutujaid selgelt deklareerima?Selged deklareerimised muudavad koodi selgemaks ja takistavad tahtmatute globaalsete muutujate tekkimist.

274