Eroare la accesarea proprietății unui obiect în JavaScript
La accesarea unei proprietăți a unui obiect, numele acestei proprietăți nu poate fi stocat într-o variabilă. Să vedem de ce. Să presupunem că avem un astfel de obiect:
let obj = {a: 1, b: 2, c: 3};
Să presupunem că variabila stochează numele proprietății a cărei valoare dorim să o obținem:
let key = 'a';
Să încercăm să accesăm proprietatea obiectului, folosind această variabilă:
console.log(obj.key); // undefined
Codul de mai sus nu va funcționa, deoarece
de fapt căutăm o proprietate cu numele
'key', și nu proprietatea al cărei nume este stocat
în variabila key. Adică, de fapt,
codul nostru este echivalent cu următorul:
console.log(obj['key']);
Singura modalitate de a accesa un element prin cheia dintr-o variabilă este scrierea acestei variabile între paranteze pătrate:
console.log(obj[key]);
Corectați eroarea comisă în următorul cod:
let obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj.prop);
Corectați eroarea comisă în următorul cod:
let obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj['prop']);