JavaScript: выравнивание заданного массива до указанной глубины
Основы JavaScript (синтаксис ES6): упражнение 234 с решением
Напишите программу на JavaScript для выравнивания заданного массива до заданной глубины.
Пример решения:
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Flatten a given array up to the specified depth</title>
</head>
<body>
</body>
</html>
Код JavaScript:
//#Source https://bit.ly/2neWfJ2
const flatten = (arr, depth = 1) =>
arr.reduce((a, v) => a.concat(depth > 1 && Array.isArray(v) ? flatten(v, depth - 1) : v), []);
console.log(flatten([1, [2], 3, 4]));
console.log(flatten([1, [2, [3, [4, 5], 6], 7], 8], 2));
Пример вывода:
[1,2,3,4] [1,2,3, [4,5], 6,7,8]
Блок - схема:
Демонстрация в реальном времени:
См. Pen javascript-basic-упражнение-234-1 от w3resource ( @ w3resource ) на CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу на JavaScript для выравнивания объекта с путями для ключей.
Далее: Напишите программу на JavaScript, чтобы получить последний ключ, который удовлетворяет предоставленной функции тестирования, в противном случае возвращается undefined.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code