⊗jsPmFVNC 220 of 505 menu

JavaScript-də funksiyalarda eyni dəyişən adları

Tutaq ki, həm funksiyanın xaricində, həm də daxilində num dəyişəni var. Bu halda lokal num dəyişəni ilə hər hansı dəyişiklik qlobal num dəyişəninə heç bir təsir göstərmir:

let num = 1; // qlobal dəyişən function func() { let num = 2; // lokal dəyişən console.log(num); } func(); // funksiyanı çağırırıq, 2 çap olunacaq console.log(num); // 1 çap olunacaq - qlobal dəyişən dəyişmədi

Lakin, lokal num dəyişənini let ilə elan etməyi unutsaq, onda funksiya daxilində lokal num dəyişəni yaranmayacaq, sadəcə qlobal dəyişən dəyişəcək:

let num = 1; function func() { num = 2; // let yazmağı unutduq - xarici dəyişəni dəyişirik console.log(num); } func(); // funksiyanı çağırırıq, 2 çap olunacaq console.log(num); // 2 çap olunacaq - dəyişən dəyişdi

Burada iki vəziyyət ola bilər: ya biz həqiqətən də qlobal dəyişəni dəyişmək istəyirdik (onda hər şey qaydasındadır), ya da biz let yazmağı unutduq və təsadüfən qlobal dəyişəni dəyişdirdik.

İkinci hal, skriptin gözlənilməz davranışına səbəb olan, aşkar edilmesi çətin bir xətadır. Buna görə də, həmişə yeni dəyişən təqdim edərkən onu let ilə elan edin.

Kodu işə salmadan müəyyən edin ki, konsola nə çap olunacaq:

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

Kodu işə salmadan müəyyən edin ki, konsola nə çap olunacaq:

let num = 1; function func() { let num = 2; } func(); console.log(num);
Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et