уменьшение используется для возврата одного значения из массива, в результате последовательной обработки результатов предыдущих элементов.
reduRight делает то же самое, но начинается в конце и работает в обратном направлении.
map используется для возврата массива, все члены которого были переданы через функцию.
ни один метод не влияет на сам массив.
var A1 = ['1', '2', '3', '4', '5', '6', '7', '8'];
// Это использование карты возвращает новый массив исходных элементов, преобразованный в числа-
A1 = A1.map (Number); // >> каждый из элементов A1 преобразован в число
// Это уменьшение сумм элементов массива-
var A1sum = A1.reduce (function (a, b) {return a + b;});
// A1sum >> возвращаемое значение: (Число) 36
Они не поддерживаются в старых браузерах, поэтому вам нужно будет заменить их. Не стоит, если все, что вы делаете, можно скопировать в простой цикл.
Расчет стандартного отклонения популяции - это пример, где можно эффективно использовать как карту, так и уменьшение-
Math.mean= function(array){
return array.reduce(function(a, b){ return a+b; })/array.length;
}
Math.stDeviation=function(array){
var mean= Math.mean(array);
dev= array.map(function(itm){return (itm-mean)*(itm-mean); });
return Math.sqrt(dev.reduce(function(a, b){ return a+b; })/array.length);
}
var A2= [6.2, 5, 4.5, 6, 6, 6.9, 6.4, 7.5];
alert ('mean: '+Math.mean(A2)+'; deviation: '+Math.stDeviation(A2))