Конвертировать Array of Arrays в массив объектов - PullRequest
0 голосов
/ 30 мая 2018

У меня есть приложение Angular, где у меня есть array массивов, как показано ниже.

array1 = [{'1', 'Tom'},{'2','Rob'}].

Мне нужно преобразовать это в:

array2 = [{'id':'1','name':'Tom', 'city':'ny'}, 
          {'id':'2','name':'Rob', 'city':'dc'}]

export class TempObject {
  constructor(public id: string, 
              public name: string, 
              public city: string) {
  }
}

Обратите внимание, чтоУ класса объекта есть другой объект собственности, который не является частью array1.Должны ли мы только зациклить array1 и создать экземпляр TempObject, или есть какой-нибудь самый простой способ?

1 Ответ

0 голосов
/ 30 мая 2018

Я настроил вашу отправную точку как массив массивов, поскольку ваш вопрос говорит о том, что это то, с чего вы должны начать.Имейте в виду, что city не входит в этот массив массивов, поэтому вам придется решить, как с этим справиться.

const array1 = [['1', 'Tom'], ['2', 'Rob']];

class TempObject {
  constructor(public id: string, 
              public name: string, 
              public city: string = '') {
  }
}

const array2 = array1.map((val, idx) => new TempObject(val[0], val[1]));

console.log(JSON.stringify(array2));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...