Разрушение объекта с помощью Enum в Javascript - PullRequest
0 голосов
/ 30 сентября 2018

Я пытаюсь найти способ деструктуризации ключей объекта в ES6 с помощью ключей другого объекта (Eum) и создать переменные.Например, мой enum -

const KEYS = {
  name:'name',
  family:'age'
}

, а мой объект:

const myObject = {
  name:'John',
  family:'Doe'
}

, и я хочу деструктурировать myObject с помощью ключей KEYS Я знаю, что приведенный ниже код неверенно что-то вроде этого:

 const {KEYS.name} = myObject

, поэтому он создает переменную с именем name, которая является значением KYES.name, но, как я уже сказал, вызвала синтаксическую ошибку.Есть ли у кого-нибудь идея для разрушающего объекта с перечислением.

1 Ответ

0 голосов
/ 30 сентября 2018

Вы можете использовать вычисленные имена свойств и шаблон назначения свойств объекта [YDKJS: ES6 & Beyond] для него.

name является зарезервированным свойством window и может привести к неожиданным результатам при его изменении.

const
    KEYS = { name: 'name', family: 'age' },
    myObject = { name:'John', family:'Doe' };

({ [KEYS.name]: window[KEYS.name] } = myObject);
 
console.log(name);
...