⊗jsPmFVNC 220 of 505 menu

Identiski mainīgo nosaukumi funkcijās JavaScript

Pieņemsim, ka ārpus funkcijas un iekšā ir mainīgais num. Šajā gadījumā jebkuras izmaiņas ar lokālo mainīgo num nekādā veidā neietekmē globālo mainīgo num:

let num = 1; // globālais mainīgais function func() { let num = 2; // lokālais mainīgais console.log(num); } func(); // izsaucam funkciju, izvadīs 2 console.log(num); // izvadīs 1 - globālais mainīgais nav mainījies

Bet, ja mēs aizmirsīsim deklarēt lokālo mainīgo num caur let, tad funkcijas iekšienē netiks izveidots lokālais mainīgais num, bet vienkārši tiks mainīts globālais mainīgais:

let num = 1; function func() { num = 2; // aizmirsām rakstīt let - mainām ārējo mainīgo console.log(num); } func(); // izsaucam funkciju, izvadīs 2 console.log(num); // izvadīs 2 - mainīgais ir mainījies

Šeit var būt divas situācijas: vai nu mēs patiešām gribējām mainīt globālo mainīgo (tad viss kārtībā), vai mēs aizmirsām let un nejauši mainījām globālo mainīgo.

Otrais gadījums ir grūti noķerama kļūda, kas noved pie neprognozējamas skripta darbības. Tāpēc vienmēr, ieviešot jaunu mainīgo, deklarējiet to caur let.

Nosakiet, nepalaist kodu, ko izvadīs konsole:

let num = 1; function func() { num = 2; } func(); console.log(num);

Nosakiet, nepalaist kodu, ko izvadīs konsole:

let num = 1; function func() { let num = 2; } func(); console.log(num);
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