Napaka pri dostopu do lastnosti objekta v JavaScriptu
Pri dostopu do lastnosti objekta ime te lastnosti ne more biti shranjeno v spremenljivki. Poglejmo, zakaj. Recimo, da imamo dan takšen objekt:
javascriptlet obj = {a: 1, b: 2, c: 3};
Recimo, da v spremenljivki hranimo ime lastnosti, katere vrednost želimo pridobiti:
javascriptlet key = 'a';
Poskusimo dostopati do lastnosti objekta z uporabo te spremenljivke:
javascriptconsole.log(obj.key); // undefined
Navedena koda ne bo delovala, saj
dejansko iščemo lastnost z imenom
'key' in ne lastnosti, katere ime je shranjeno
v spremenljivki key. To pomeni, da je
naša koda dejansko enakovredna naslednji:
javascriptconsole.log(obj['key']);
Edini način za dostop do elementa preko ključa iz spremenljivke je zapis te spremenljivke v oglatih oklepajih:
javascriptconsole.log(obj[key]);
Задание 1
Popravite napako, narejeno v naslednji kodi:
javascriptlet obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj.prop);
Задание 2
Popravite napako, narejeno v naslednji kodi:
javascriptlet obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj['prop']);