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']);