Hitilafu ya Kupata Kipengele cha Kitu katika JavaScript
Hebu tuwe na kitu fulani:
let obj = {
a: 1,
b: 2,
c: 3,
d: 4,
e: 5,
};
Hebu tutake kupata kipengele kutoka kwenye kitu hiki kwa ufunguo fulani. Hebu jina la ufunguo huu liingizwe na mtumiaji kwenye kiingilio:
console.log(input.value);
Baadhi ya watengenezaji programu wanaoanza hufanya hitilafu ifuatayo: wanapita kitu kwenye kitanzi, wakilinganisha ufunguo mmoja mmoja na thamani ya kiingilio, kama hivi:
for (let key in obj) {
if (key === input.value) {
let elem = obj[key];
console.log(elem); // thamani inayotafutwa
break;
}
}
Hata hivyo, katika tatizo hili kitanzi hakina maana kabisa. Kwani tunaweza tu kupata thamani yetu kwa ufunguo, kama hivi:
let elem = obj[input.value];
Ikiwa ni lazima unaweza kuongeza ukaguzi wa uwepo wa ufunguo kama huo katika kitu:
if (obj[input.value] !== undefined) {
let elem = obj[input.value];
console.log(elem);
} else {
console.log('hakuna ufunguo kama huo katika kitu');
}