![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| zenuch |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 29.1.2007 Репутация: нет Всего: нет |
Меня все мучает вопрос почему во многих книжках по JS
цикл пускают в таком духе:
а не
Ведь в первом случае идет n-кратная инициализация переменной -- что не есть хорошо. Вопрос: "Может я не правильно рассуждаю?" |
||||
|
|||||
| Zeroglif |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 644 Регистрация: 22.9.2005 Репутация: 28 Всего: 66 |
Потому что это прямо описано в ECMAScript (12.6.4), хотя декларацию и можно легко вынести наружу, от этого суть не поменяется, только лишняя строчка да пара лишних символов. Ответ: Неправильно.
В javascript нет n-кратной инициализации или конкретизации переменных (ECMAScript, 10). Это делается один раз (условно говоря до начала построчного разбора кода) непосредственно при входе в контекст/область исполнения (execution context). Можно 100 раз повторить декларацию переменной, 99 из них будут проигнорированы. Отсюда конструкция for-in не будет в каждый проход заново декларировать i, максимум - это перевычисление идентификатора (на совести конкретного движка). |
||||
|
|||||
| zenuch |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 29.1.2007 Репутация: нет Всего: нет |
Блин спасибо Zeroglif просвятил! Спасибо этому форуму и тебе в частности за то что помогаешь!
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |