JavaScript'теги if-else ичиндеги өзгөрмөлөрдүн көрүнүү чөйрөсү
Жөнөкөйлүгү үчүн бизде ар дайым аткарылуучу шарт бар дейли:
if (true) {
}
Келгиле, төмөнкү кодду карап көрөлү:
if (true) {
let res = '!';
}
console.log(res);
Көрүп тургандай, res өзгөрмөсүнө
'!' мааниси жазылышы керек. Бирок,
бул кодду иштетсек, консолго ката чыгат!
Маселе мында, каша ичинде жарыяланган өзгөрмөлөр, ошол кашалардын ичинде гана көрүнөт, алардын сыртында көрүнбөйт. Илимий тил менен бул жерде өзгөрмөлөрдүн көрүнүү чөйрөсү жөнүндө сөз болот.
Каша ичинде жарыяланган өзгөрмөлөрдүн көрүнүү чөйрөсү ошол кашалардын өзү гана дей алабыз. Бирок, эгерде өзгөрмө кашалардын сыртында жарыяланса, анда ал ичинде да, сыртында да көрүнөт:
let res; // өзгөрмө сыртта жарыяланды
if (true) {
res = '!';
}
console.log(res); // '!' чыгарат
Кийинки мисалда res өзгөрмөсүнө
шартка жараша же
1 мааниси, же 2 мааниси жазылат:
let num = 5;
if (num >= 0) {
let res = 1;
} else {
let res = 2;
}
console.log(res);
Бирок, бул кодду иштетсек, консолго ката чыгат. Эми түшүнгөндөй эле, бардык иш өзгөрмөлөрдүн көрүнүүсүндө. Маселени чечүү үчүн өзгөрмөнү шарттын сыртында жарыялайлы:
let test = true;
let res; // өзгөрмөнү шарттын сыртында жарыялайбыз
if (test) {
res = 1;
} else {
res = 2;
}
console.log(res); // 1 чыгарат
Төмөндө берилген коддун автору 18
жашка жеткендигин текшерүүнү каалаган. Код, бирок, иштебей жатат. Автордун
катасын оңдоп бериңиз. Мына маселелүү код:
let age = 17;
if (age >= 18) {
let adult = true;
} else {
let adult = false;
}
console.log(adult);