Целью является создание функции, которая принимает два аргумента: массив не повторяющихся чисел и строку (либо «значение», либо «индекс») и возвращают либо наименьшее значение в массиве или индекс наименьшего числа в массиве, в зависимости от этого второго аргумента.Определение индекса наименьшего числа в массиве с использованием сокращения
мне действительно нужно практиковать возвраты и некоторые методы массива, так что я придумал:
function min(arr, toReturn) { // toReturn takes either 'value' or 'index'
return arr.reduce(function(sofar, current, index) {
return (toReturn == 'value') ? Math.min(sofar, current) : arr.indexOf(Math.min(sofar, current));
});}
console.log(min([7,22,3,4,5],'index'));
Он работает при установке на «ценности», но делает страшный -1 для «индекса».
Где я ошибаюсь здесь синтаксис?
для чего используется второй аргумент? Если вам нужно найти индекс минимального элемента массива, второй arg выглядит нечетным. – Evgeniy
Это характер функции: он смотрит на второй аргумент (строку), чтобы вернуть либо самое маленькое значение (значение), либо индекс наименьшее значение ('index') – zahabba
О, так что его просто флаг, что мы должны вернуть самому маленькому значению или его индексу в массиве? – Evgeniy