Klaida kreipiantis į objekto savybę JavaScript

Kreipiantis į objekto savybę, šios savybės pavadinimas negali būti saugomas kintamajame. Pažiūrėkime kodėl. Tarkime, mes turime šį objektą:

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

Tarkime kintamajame yra saugomas savybės pavadinimas, kurio reikšmę mes norime gauti:

javascriptlet key = 'a';

Pabandykime kreiptis į objekto savybę, naudojant šį kintamąjį:

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

Pateiktas kodas neveiks, nes iš esmės mes ieškome savybės, kurios pavadinimas 'key', o ne savybės, kurios pavadinimas saugomas kintamajame key. Tai reiškia, kad iš esmės mūsų kodas yra lygiavertis šiam:

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

Vienintelis būdas kreiptis į elementą pagal raktą iš kintamojo yra šio kintamojo įrašas laužtiniuose skliaustuose:

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

Ištaisykite klaidą, padarytą šiame kode:

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

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

Ištaisykite klaidą, padarytą šiame kode:

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

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