Функция reduce
уменьшает массив до значения объекта, как определено accumulator
.
let array1 = [2, 5, 8, 0, 10];
let array2 = [1, 4, 9, 7, 6];
const reducer = (accumulator, currentValue) => accumulator + currentValue;
// 1 + 2 + 3 + 4
console.log(array1.reduce(reducer));
// expected output: 10
// 5 + 1 + 2 + 3 + 4
console.log(array1.reduce(reducer, 5));
// expected output: 15
Метод sort()
сортирует элементы массива на месте и возвращает массив.Порядок сортировки по умолчанию строится после преобразования элементов в строки и сравнения их последовательностей значений кодовых единиц UTF-16.
var months = ['March', 'Jan', 'Feb', 'Dec'];
months.sort();
console.log(months);
// expected output: Array ["Dec", "Feb", "Jan", "March"]
const sortingAccending = (a, b) => a - b
let numbers = [4, 2, 5, 1, 3];
numbers.sort(sortingAccending);
console.log(numbers);
// expected output: Array [1, 100000, 21, 30, 4]
И вы ответите на свой вопрос, reduce
нельзя использовать для замены элементов.Вам придется либо использовать sort
для написания пользовательской сортировки function