@denisei

Упростить массив объектов, есть ли резон и красивые решения?

Обычное дело, бэкенд на запрос отдает JSON массив объектов c идентичными ключами (но разными значениями):
[
     {key1:value1,...,keyN: valueN}, 
     {key1:valueA1,...,keyN: valueAN}, 
      ... ... ... ... ...
    ]


Есть ли резон для уменьшения оверхеда, преобразовывать такой массив в объект вида:
{
  headers:[key1, key2,...,keyN], 
  rows:[
   [value1, value2,...,valueN],
   [valueA1, valueA2,...,valueAN],
   ....
 ]
}


На первый взгляд просится такое решение, но может быть есть что получше?
ourArray.reduce(function(obj, el){
		var row = [];
		for (var key in el){
			if (obj.headers.indexOf(key) === -1)
				obj.headers.push(key);
			row.push(el[key]);
		}			
		obj.rows.push(row);
		return obj;
	},
		{ headers:[], rows:[] }
	)
  • Вопрос задан
  • 188 просмотров
Решения вопроса 2
AlexMaxTM
@AlexMaxTM
В погоне за призрачным оверхедом, вы нагружаете процессор дополнительными вычислениями и еще напрасно расходуете память. Работайте напрямую с тем, что имеете. Массив объектов вполне удобный формат.
Ответ написан
Комментировать
nexmean
@nexmean
погромист
Это какая-то экономия на спичках получается. Отдавайте данные с сервера в нормальном виде и храните их также.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы