ობიექტის თვისებაზე მიწვდომის შეცდომა 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']);