← Усі задачіJavaScript · Junior
flatten: розгорнути вкладений масив
Напишіть функцію flatten(array), яка розгортає масив будь-якої глибини вкладеності в плаский. Об'єкти всередині не чіпаємо - розгортаються лише масиви.
Спробуйте розв'язати без Array.prototype.flat, як зазвичай просять на співбесіді.
Ctrl+Enter - запустити тести. Tab - відступ; щоб вийти з редактора клавіатурою, натисніть Esc, а потім Tab. Код зберігається в цьому браузері.
Тести (5)
expect(flatten([1, [2, [3, [4]], 5]])).toEqual([1, 2, 3, 4, 5]);
expect(flatten([[], [[]], 1])).toEqual([1]);
expect(flatten(["a", ["b"], { c: [1] }])).toEqual(["a", "b", { c: [1] }]);
expect(flatten([])).toEqual([]);
const source = [1, [2]]; flatten(source); expect(source).toEqual([1, [2]]);