Greška pri pristupanju svojstvu objekta u JavaScript-u
Prilikom pristupanja svojstvu objekta, ime tog svojstva ne može biti sačuvano u promenljivoj. Hajde da vidimo zašto. Recimo da imamo ovakav objekat:
let obj = {a: 1, b: 2, c: 3};
Recimo da u promenljivoj bude sačuvano ime svojstva čiju vrednost želimo da dobijemo:
let key = 'a';
Pokušajmo da pristupimo svojstvu objekta, koristeći ovu promenljivu:
console.log(obj.key); // undefined
Navedeni kod neće raditi, jer
u suštini tražimo svojstvo sa imenom
'key', a ne svojstvo čije ime je sačuvano
u promenljivoj key. To jest, zapravo
naš kod je ekvivalentan sledećem:
console.log(obj['key']);
Jedini način da se pristupi elementu po ključu iz promenljive je upis te promenljive u uglastim zagradama:
console.log(obj[key]);
Ispravite grešku koja je načinjena u sledećem kodu:
let obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj.prop);
Ispravite grešku koja je načinjena u sledećem kodu:
let obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj['prop']);