Показать сообщение отдельно
  #9 (permalink)  
Старый 27.03.2012, 00:04
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Неплохая идея, Maxmaxmахimus, для реализации её опытными программистами, которые понимают как использовать регулярные выражения и как работают фнукции forEach и match, явно не для новичков (хотя разобраться можно).

Кроме того, следует понимать, что данный код не кроссбраузерный, так как функция forEach работает не во всех браузерах, в качестве альтернативы (со своими демонами) можно для обхода всех элементов массива использовать цикл for (например, вида for (var key in arr) {var val = arr[key]} ).

Также оптимизация требуется предпринять некоторые действия для прекращения выполнения forEach при нахождении требуемого значения, так как внутренняя функция в forEach выполняется для всех элементов массива (лично мне при помощи break) в Google Chrome этого сделать не удалось).

Кроме того, я так понимаю, вы сознательно, захотели, чтобы при выводе всё время выводилось сообщение "приступ".
С выводом значения при использовании forEach также не всё так просто, даже если убрать ваш return 'приступ', alert выведет underfined, так как return time[1] возвращает значение в никуда (а точнее только во внутреннюю функцию), решением может быть присвоение этого значения некоторой переменной (например, а = time[1]), а потом возвращение этого значения (вместо return 'приступ'; - return a;).

PS: Свою гениальность или манию величия, Maxmaxmахimus, можешь проверить на моём вопросе Размеры фреймов и JavaScript
Ответить с цитированием