with
Добавить новую область видимости
Аргументы
- object
- Добавить указанный объект в цепочку областей видимости. Может быть любое выражение, скобки вокруг обязательны.
- statement
- Блок или javascript-вызов для выполнения внутри дополненной области видимости
Описание, примеры
В следующем примере вычисления выполняются с областью видимости, расширенной объектом Math.
Более частый пример:
При поиске переменной внутри with, интерпретатор сначала проверяет свойства object. Если свойства с таким именем нет - он идет дальше вверх по областям видимости.
Использование with с одной стороны наглядно, с другой -
может скрывать ошибки программирования и соответствующий код плохо
сжимается компрессорами.
По этим причинам использовать with не рекомендуется.
Вместо этого можно использовать чуть менее наглядный, но надежный доступ через временную переменную:
Пример: переменная вместо with
s.top = s.left = '5px'