Вычисляемые свойства в JavaScript

При объявлении объекта имена его свойств могут браться из переменных. Такие свойства называются вычисляемыми. Давайте посмотрим, как это делается. Пусть у нас есть следующий объект:

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

Пусть имя некоторого свойства хранится в переменной:

javascriptlet key = 'a';

Давайте сделаем так, чтобы вместо имени свойства взялось значение из нашей переменной. Для этого переменную следует взять в квадратные скобки:

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

При объявлении вычисляемых свойств можно выполнять некоторый код. Пример:

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

В следующем коде ключ должен был взяться из переменной. Исправьте допущенную ошибку:

javascriptlet key = 'x';

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

Дан объект:

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

Даны переменные:

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

Сделайте так, чтобы ключи объекта брались из этих переменных.