Грешка при достъп до свойство на обект в JavaScript

При достъп до свойство на обект името на това свойство не може да се съхранява в променлива. Нека да видим защо. Нека имаме даден следния обект:

javascriptlet obj = {a: 1, b: 2, c: 3};

Нека в променливата се съхранява името на свойството, чиято стойност искаме да получим:

javascriptlet key = 'a';

Нека се опитаме да достъпим свойството на обекта, използвайки тази променлива:

javascriptconsole.log(obj.key); // undefined

Приведеният код няма да работи, тъй като всъщност ние търсим свойство с име 'key', а не свойство, чието име се съхранява в променливата key. Тоест всъщност нашият код е еквивалентен на следния:

javascriptconsole.log(obj['key']);

Единственият начин за достъп до елемент по ключ от променлива е записването на тази променлива в квадратни скоби:

javascriptconsole.log(obj[key]);
Задание 1

Корегирайте грешката, допусната в следния код:

javascriptlet obj = {x: 1, y: 2, z: 3};

let prop = 'x';
console.log(obj.prop);
Задание 2

Корегирайте грешката, допусната в следния код:

javascriptlet obj = {x: 1, y: 2, z: 3};

let prop = 'x';
console.log(obj['prop']);