⊗jsPmFVNC 220 of 505 menu

Еднакви имена на променливи във функции в JavaScript

Нека и извън функцията, и вътре в нея има променлива num. В този случай всякакви промени в локалната променлива num по никакъв начин не влияят на глобалната променлива num:

let num = 1; // глобална променлива function func() { let num = 2; // локална променлива console.log(num); } func(); // извикваме функцията, ще изведе 2 console.log(num); // ще изведе 1 - глобалната променлива не се е променила

Но, ако забравим да декларираме локалната променлива num чрез let, то вътре във функцията няма да се създаде локална променлива num, а просто ще се промени глобалната променлива:

let num = 1; function func() { num = 2; // забравихме да напишем let - променяме външната променлива console.log(num); } func(); // извикваме функцията, ще изведе 2 console.log(num); // ще изведе 2 - променливата се промени

Тук може да има две ситуации: или наистина сме искали да променим глобалната променлива (тогава всичко е наред), или сме забравили let и случайно сме променили глобалната променлива.

Вторият случай е трудноуловима грешка, която води до непредсказуемо поведение на скрипта. Затова винаги, при въвеждане на нова променлива я декларирайте чрез let.

Определете, без да стартирате кода, какво ще се изведе в конзолата:

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

Определете, без да стартирате кода, какво ще се изведе в конзолата:

let num = 1; function func() { let num = 2; } func(); console.log(num);
Български
AfrikaansAzərbaycanবাংলাБеларускаяČ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
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне