Массив последовательных значений

Beginner

This tutorial is from open-source community. Access the source code

Введение

В этом практическом занятии мы изучим, как использовать функцию reduceSuccessive() для применения заданной функции к накапливающему значению и каждому элементу в массиве, возвращая массив последовательно уменьшенных значений. Мы узнаем, как использовать Array.prototype.reduce() для применения функции к массиву и хранения каждого нового результата. В конце этого практического занятия у вас будет лучше понимание, как использовать эти методы для манипулирования массивами в JavaScript.

Массив последовательных значений

Для создания массива последовательных значений в JavaScript можно использовать метод Array.prototype.reduce(). Этот метод применяет функцию к накапливающему значению и каждому элементу в массиве слева направо и возвращает массив последовательно уменьшенных значений.

Вот, как использовать функцию reduceSuccessive для применения заданной функции к заданному массиву, сохраняя каждый новый результат:

const reduceSuccessive = (arr, fn, acc) =>
  arr.reduce(
    (res, val, i, arr) => (res.push(fn(res.slice(-1)[0], val, i, arr)), res),
    [acc]
  );

Затем можно вызвать функцию reduceSuccessive с массивом, функцией и начальным значением для накапливающего значения:

reduceSuccessive([1, 2, 3, 4, 5, 6], (acc, val) => acc + val, 0);
// [0, 1, 3, 6, 10, 15, 21]

Для начала практиковать программирование с этой функцией откройте Терминал/SSH и введите node.

Резюме

Поздравляем! Вы завершили практическое занятие по массиву последовательных значений. Вы можете практиковаться в более многих лабораторных работах в LabEx, чтобы улучшить свои навыки.