Есть код, который принимает массив и должен вернуть отсортированный массив из двух элементов, первый - это наименьшее, второй наибольшее значение в передаваемом массиве. Логически сделал все верно но ни как не заставлю код работать. Помогите разобраться.
function minMax(arr){
function determineOrder(num){
return (num[0] > num[1]) ? array.push(num[0], num[1]) : array.push(num[1], num[0]) ;
}
return arr.map(determineOrder);
}
minMaxminMax([1,2,3,4,5]) ;
А я ожидал такой результат:
minMax([1,2,3,4,5]) == [1,5]
minMax([2334454,5]) == [5, 2334454]
minMax([1]) == [1, 1]
Без всяких заумностей. Внутри функции сначала определяем две переменные как минимум и максимум равные начальному элементу массива. Потом сравниваем их со всем элементами массива по порядку.
function minMax(arr){
var min = arr[0], max = arr[0];
arr.forEach(function(val) {
min = Math.min(min, val);
max = Math.max(max, val);
});
return [min, max];
}
console.log(minMax([1,2,3,4,5]));
console.log(minMax([2334454,5]));
console.log(minMax([1]));
Три представленные реализации возврщают наименьшее и наибольшее значения из массива
es5:
function minMax(arr){
return [Math.min.apply(Math, arr), Math.max.apply(Math, arr)];
}
console.log(minMax([1,2,3,4,5]));
console.log(minMax([2334454,5]));
console.log(minMax([1]));
es6:
function minMax(arr){
return [Math.min(...arr), Math.max(...arr)];
}
console.log(minMax([1,2,3,4,5]));
console.log(minMax([2334454,5]));
console.log(minMax([1]));
old way:
function minMax(arr) {
var a = arr.sort(function(a,b) {return a-b});
return [a[0], a[a.length-1]];
}
console.log(minMax([1,2,3,4,5]));
console.log(minMax([2334454,5]));
console.log(minMax([1]));
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Добрый вечер! Возникла проблема с решением задачиЕсть 9 блоков (массив mult от 0 до 8)
По определенном событию мне необходимо подгрузить дополнительный файл javascript и, после его загрузки и выполнения, выполнить некое действиеПо...
И так, не работает onСlickВыскакивает вот такое сообщение: