Во-первых, вы путаете индекс массива и значение по этому индексу. Индекс - номер значения в массиве, а сравнение происходит только значений.
Кроме того, логика тут следующая: нам надо пройтись по всему массиву и найти минимальное значение, а функция вычисления минимального значения требует два аргумента. С чем и как сравнивать первый элемент массива, ведь он только первый? Это можно сделать только со вторым элементом и так до самого конца, ведь последний элемент массива будет сравниваться с минимальным элементом из предыдущих итераций. Добавлять дополнительную проверку в тело цикла - добавлять эту же проверку для всех итераций, а первый элемент в списке только один. Поэтому логично для первой итерации подготовить первый элемент списка для сравнения до начала цикла, а итерацию прохода по списку начинать со второго элемента. В приведённом данном коде как раз тут ошибка: цикл начат с первого элемента и происходит сравнение первого элемента с самим собой на первой итерации, а уже только потом идёт реальная работа. Правильнее будет следующее решение:
function getMin(arr){
if (arr.length == 0) { return Number.POSITIVE_INFINITY } // Делаем как в Math.min()
let min = arr[0];
for (i=1;i < arr.length;i++){
if(arr[i] < min){
min = arr[i];
}
}
return min;
}