Arvutatavad omadused JavaScriptis

Objekti deklareerimisel võivad selle omaduste nimed tulla muutujatest. Selliseid omadusi nimetatakse arvutatavateks. Vaatame, kuidas seda tehakse. Olgu meil järgmine objekt:

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

Olgu mõne omaduse nimi salvestatud muutujasse:

javascriptlet key = 'a';

Teeme nii, et omaduse nime asemel võetaks väärtus meie muutujast. Selleks tuleb muutuja panna nurksulgudesse:

javascriptlet obj = {
  [key]: 1,
  b: 2,
  c: 3
};

Arvutatavate omaduste deklareerimisel saab käivitada mingit koodi. Näide:

javascriptlet obj = {
  [key + '1']: 1,
  [key + '2']: 2,
  [key + '3']: 3
};
Задание 1

Järgmises koodis pidi võti tulema muutujast. Parandage tehtud viga:

javascriptlet key = 'x';

let obj = {
  key: 1,
  y: 2,
  z: 3
};
Задание 2

Antud objekt:

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

Antud muutujad:

javascriptlet key1 = 'x';
let key2 = 'y';
let key3 = 'z';

Tehke nii, et objekti võtmed tuleks nendest muutujatest.