«Расплющивание» массива
Дан массив:
const arr = [1, [2, [3, [4,5]]]]
Необходимо написать функцию, которая принимает в аргументах многомерный массив неограниченной вложенности и возвращает одномерный массив, состоящий из элементов со всех уровней вложенности исходного массива.
Примеры:
flat([1, [2, [3, [4,5]]]]); // => [1, 2, 3, 4, 5]
flat([1, [2, [3, [4,5,[6,[7]]]]]]); // => [1, 2, 3, 4, 5, 6, 7]