⊗jsPmCdScp 134 of 505 menu

Mainīgo lietošanas joma if-else JavaScript

Lai vienkāršības labad mums vienmēr ir izpildās nosacījums:

if (true) { }

Apskatīsim šādu kodu:

if (true) { let res = '!'; } console.log(res);

Kā jūs redzat, mainīgajā res vajadzētu ierakstīties vērtībai '!'. Tomēr, ja palaidīsiet šo kodu, konsolē tiks izvadīta kļūda!

Lieta ir tāda, ka mainīgie, deklarēti iekšā cirtainajās iekavās, ir redzami tikai iekšā šīm iekavām, un nav redzami ārpus tām. Zinātniski šeit runa ir par mainīgo lietošanas jomu.

Var teikt, ka mainīgo lietošanas joma, deklarētiem iekšā cirtainajām iekavām, ir tikai šīs cirtainās iekavas. Tomēr, ja mainīgais ir deklarēts ārpus cirtainajām iekavām, tad tas ir redzams gan iekšā tām, gan ārpusē:

let res; // mainīgais deklarēts ārpusē if (true) { res = '!'; } console.log(res); // izvadīs '!'

Nākamajā piemērā mainīgajā res atkarībā no nosacījuma tiek ierakstīta vai nu vērtība 1, vai vērtība 2:

let num = 5; if (num >= 0) { let res = 1; } else { let res = 2; } console.log(res);

Tomēr, ja palaidīsiet šo kodu, tad konsolē tiks izvadīta kļūda. Kā jūs tagad jau saprotat, visa lieta ir mainīgo redzamībā. Lai atrisinātu problēmu, deklarēsim mainīgo ārpus nosacījuma:

let test = true; let res; // deklarējam mainīgo ārpus nosacījuma if (test) { res = 1; } else { res = 2; } console.log(res); // izvadīs 1

Zemāk redzamā koda autors gribēja veikt vecuma pārbaudi uz 18 gadu sasniegšanu. Kods tomēr nestrādā. Izlabojiet koda autora kļūdu. Lūk, problemātiskais kods:

let age = 17; if (age >= 18) { let adult = true; } else { let adult = false; } console.log(adult);
Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt