8 of 17 menu

Klaida gaunant objekto elementą JavaScript

Tarkime, kad turime tam tikrą objektą:

let obj = { a: 1, b: 2, c: 3, d: 4, e: 5, };

Tarkime, kad norime iš šio objekto gauti elementą pagal tam tikrą raktą. Tarkime, kad šio rakto pavadinimą įveda vartotojas į įvesties lauką:

console.log(input.value);

Kai kurie pradedantys programuotojai daro šią klaidą: jie perrenka objektą cikle, paeiliui lygindami raktus su įvesties lauko reikšme, štai taip:

for (let key in obj) { if (key === input.value) { let elem = obj[key]; console.log(elem); // ieškoma reikšmė break; } }

Tačiau šioje užduotyje ciklas yra visiškai nereikalingas. Juk mes galime tiesiog gauti mūsų reikšmę pagal raktą, štai taip:

let elem = obj[input.value];

Jei reikia, galima pridėti tokio rakto buvimo objekte patikrinimą:

if (obj[input.value] !== undefined) { let elem = obj[input.value]; console.log(elem); } else { console.log('nėra tokio rakto objekte'); }
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti