Upeo wa Muonekano wa Vigezo katika if-else katika JavaScript
Kwa urahisi tuwe na hali inayotekelezwa kila wakati:
if (true) {
}
Wacha tuchunguze mifuatayo ya kificho:
if (true) {
let res = '!';
}
console.log(res);
Kama unavyoona, thamani '!'
inapaswa kurekodiwa kwenye kigezo res.
Hata hivyo, ikiwa utaendesha kificho hiki, hitilafu
itaonyeshwa kwenye konsoli!
Jambo ni kwamba viambajengo, vilivyotangazwa ndani ya mabano ya curly, huonekana tu ndani ya mabano hayo, na hayaonekani nje. Kwa kisayansi hapa tunazungumzia kuhusu upeo wa muonekano wa vigezo.
Inaweza kusemwa kuwa upeo wa muonekano wa vigezo, vilivyotangazwa ndani ya mabano ya curly, ni mabano hayo ya curly tu. Hata hivyo, ikiwa kigezo kimetangazwa nje ya mabano ya curly, basi kinaonekana ndani yao, na nje:
let res; // kigezo kimetangazwa nje
if (true) {
res = '!';
}
console.log(res); // itaonyesha '!'
Katika mfano ufuatao thamani ama 1,
ama 2 inarekodiwa kwenye kigezo res
kulingana na hali:
let num = 5;
if (num >= 0) {
let res = 1;
} else {
let res = 2;
}
console.log(res);
Hata hivyo, ikiwa utaendesha kificho hiki, hitilafu itaonyeshwa kwenye konsoli. Kama sasa umeelewa, jambo zima liko katika muonekano wa vigezo. Ili kutatua shida tatangaze kigezo nje ya hali:
let test = true;
let res; // tangaze kigezo nje ya hali
if (test) {
res = 1;
} else {
res = 2;
}
console.log(res); // itaonyesha 1
Mwandishi wa mifundo iliyo hapa chini alitaka kufanya
ukaguzi wa umri kufikia miaka 18.
Mifundo, hata hivyo, haifanyi kazi. Sahihisha
hitilafu ya mwandishi wa mifundo. Hii ni mifundo yenye shida:
let age = 17;
if (age >= 18) {
let adult = true;
} else {
let adult = false;
}
console.log(adult);