извлечение объектов из массива в массиве - PullRequest
0 голосов
/ 11 февраля 2020

У меня были проблемы с тем, чтобы эта функция работала с несколькими свойствами и значениями.

код здесь работает нормально, пока объект содержит одно свойство и значение.

var arr = [ [{ prop: 'val1' }], [{ prop: 'val2' }], [{ prop: 'val3' }] ]

var res = arr.map(getObject);

function getObject(o) {
    return Array.isArray(o) ?  getObject(o[0]) : o;
}
console.log(res);


[
    {
      "prop": "val1"
    },
    {
      "prop": "val2"
    },
    {
      "prop": "val3"
    }
  ]

  • Я пытаюсь заставить функцию работать так, чтобы она могла регистрировать объект с несколькими свойствами и значениями

ex.

    oldArray = [ [{ prop1: 'val1', prop2: 'val2' }], [{ prop1: 'val1', prop2: 'val2' }], [{ prop1: 'val1', prop2: 'val2' }] ];


    newArray = [
    {
      "prop1": "val1",
      "prop2": "val2",
    },
    {
      "prop1": "val1",
      "prop2": "val2",
    },
    {
      "prop1": "val1",
      "prop2": "val2",
    },
  ];

1 Ответ

0 голосов
/ 11 февраля 2020

var oldArray = [ [{ prop1: 'val1', prop2: 'val2' }, { prop11: 'val11', prop22: 'val22' }], [{ prop1: 'val1', prop2: 'val2' }], [{ prop1: 'val1', prop2: 'val2' }] ];

var newArray = [];
oldArray.map(function(subArray){
    subArray.map(function(prop){
        newArray.push(prop);
    });
});

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