Самый эффективный способ фильтрации объекта с неизвестными ключами - PullRequest
1 голос
/ 20 марта 2019

Для примера у нас есть список:

const list = {
  "honda": "cars",
  "samsung": "electronics",
  "pear": "fruits"
}

Если пользователь нажимает на один из вариантов, мы должны получить выбранные, а не выбранные параметры из списка.Я думал, что это будет очень быстрый подход:

const filterObjectList = ({ target: { value } }) => {
  const { [value], ...notSelected } = list;
}

Например, пользователь выбрал honda.

list[value] === list.honda //true

. В соответствии с приведенным выше примером, моя мысль должна бытьДа, но похоже, что это не так (неожиданный знак ...).Что еще я могу использовать, что более эффективно, чем Object.keys().filter?

1 Ответ

5 голосов
/ 20 марта 2019

Вы должны использовать переменную для разложения вашего значения на:

const filterObjectList = ({ target: { value } }) => {
  const { [value]: selected, ...notSelected } = list;
  // do something with selected and notSelected
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...