Показать сообщение отдельно
  #8 (permalink)  
Старый 12.01.2010, 23:27
Профессор
Отправить личное сообщение для Dmitry A. Soshnikov Посмотреть профиль Найти все сообщения от Dmitry A. Soshnikov
 
Регистрация: 25.02.2008
Сообщений: 707

Сообщение от ECMA-262-3 7.8.5 Regular Expression Literals
A regular expression literal is an input element that is converted to a RegExp object (section 15.10)
when it is scanned. The object is created before evaluation of the containing program or function begins.
Evaluation of the literal produces a reference to that object; it does not create a new object.
Однако, это поведение не наблюдается в Safari и IE.

https://bugzilla.mozilla.org/show_bug.cgi?id=98409 - хотели фиксить в ES4 (который не вышел), B.Eich участвовал в обсуждении этого "бага". Так что, сейчас это поведение нормальное (в качестве оптимизации - регэксп может появится, например, в теле цикла).
__________________
Тонкости ECMAScript

Последний раз редактировалось Dmitry A. Soshnikov, 12.01.2010 в 23:38.
Ответить с цитированием