Метод Underscore.js _.reductions ()
Метод _.reductions () используется для преобразования массива элементов в массив, в котором хранится каждое промежуточное значение в операции сворачивания. Этот метод аналогичен методу _.reduce (), за исключением того, что он возвращает массив.
В этот метод передаются массив, функция и начальное значение , чтобы сгенерировать новый массив для выполнения операций с ним .
Синтаксис:
_.reductions (массив, функция, начальное_значение)
Параметры:
- array: массив, над которым нужно работать.
- function: функция, содержащая условия итерации.
- start_val: значение, переданное при запуске, которое обновляется при дальнейших операциях.
Возвращаемое значение: этот метод возвращает новый массив.
Примечание. Это не будет работать в обычном JavaScript, поскольку для этого требуется установка библиотеки contrib underscore.js. Библиотеку contrib Underscore.js можно установить с помощью npm install underscore-contrib --save.
Пример 1: В этом примере мы сгенерируем массив, используя этот метод. Здесь создается массив суммы с начальным значением 0, которое обновляется при операциях сложения.
Javascript
// Defining underscore contrib variable var _ = require( 'underscore-contrib' ); // Defining Array var array = [10, 12, 23, 34, 45]; var arr =_.reductions(array, function (st, n) { return st + n; }, 0); console.log( "Generated Array : " ); console.log(arr); |
Выход:
Сгенерированный массив: [10, 22, 45, 79, 124]
Пример 2: В этом примере мы сгенерируем массив умножения, задав начальное значение 1, которое обновляется при дальнейшем умножении.
Javascript
// Defining underscore contrib variable var _ = require( 'underscore-contrib' ); // Defining Array var array = [10, 12, 23, 34, 45]; var arr =_.reductions(array, function (st, n) { return st * n; }, 1); console.log( "Generated Array : " ); console.log(arr); |
Выход:
Сгенерированный массив: [10, 120, 2760, 93840, 4222800]