Как деструктурировать массив с объектом, в ключах которого есть пробел?

data={data.map(({ ID,filePath,accountId,companyId,['First Name'], ...rest }) => rest)}

В этом случае Имя - это ключ с пробелом, по-видимому, при передаче, как указано выше, это вызывает ошибку. Как справиться с этим сценарием?


person Joji Thomas    schedule 19.12.2019    source источник


Ответы (1)


В именах переменных (идентификаторах) не должно быть пробелов, вы не сможете преобразовать это свойство в отдельную переменную, если вы также не переименуете переменную, что можно сделать с помощью записи в квадратных скобках:

data.map(({
  ID,
  filePath,
  accountId,
  companyId,
  ['First Name']: firstName,
  ...rest
}) => rest)

const data = [
  {
    'First Name': 'foo',
    'anotherProp': 'another'
  },
  {
    'First Name': 'bar',
    'anotherProp': 'another'
  }
];

const mapped = data.map(({
  ID,
  filePath,
  accountId,
  companyId,
  ['First Name']: firstName,
  ...rest
}) => rest);

console.log(mapped);

person CertainPerformance    schedule 19.12.2019