Как удалить несколько пустых обёрток массива и просто сохранить объект - PullRequest
0 голосов
/ 23 мая 2019

Как удалить все пустые обертки массива?

От этого к

[[[{"type":"banana"},{"type":"orange"}]]]

К этому

{"type":"banana"},{"type":"orange"}

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

1 Ответ

1 голос
/ 23 мая 2019

Использование recursion -

const input = [[[{"type":"banana"},{"type":"orange"}]]];

function flattenDeep(input) {
    return input.reduce((accu, val) => Array.isArray(val) ? accu.concat(flattenDeep(val)):accu.concat(val), []);
}

console.log(flattenDeep(input));

Вы также можете использовать встроенную функцию flat, если знаете глубину вложения.

const input = [[[{"type":"banana"},{"type":"orange"}]]];

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