Это не поиск наибольшего числа в массиве.
В первом случае код ищет число в массиве равное первому элементу массива и на первом цикле останавливается.
Вторая функция находит число два, т.к. оно не равно единице - первому элементу массива.
Вот правильный код.
var arr = [1,2,1,1,1,1];
var getMaxInt = function(array) {
return Math.max.apply(Math, array);
}
getMaxInt(arr);