stp008,
1) Функция вызывается 1 раз. За 1 раз любая функция может вернуть только 1 значение (не считая массивы и объекты)
2) return выходит из функции. Как только было совпадение, цикл перестаёт работать и функция возвращает значение
3) Если вы всё же хотите получить несколько значений, то
function find(array, value) {
var res = [];
for(var i=0; i<array.length; i++) {
if (array[i] == value) res[i] = i;
else res[i] = -1;
}
return res;
}
var arr = ["a", -1, 2, "b"];
var index = find(arr, 2);
alert(index);
В этом примере функция find собирает результаты в массив и возвращает уже не одно значение, а массив.