Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
PHP Поиск
Условная компиляция в javascript
Начиная с Internet Explorer 4.0, язык JScript поддерживает условную компиляцию сценариев. Она была введена в JScript для того, чтобы одновременно обеспечить и использование новых возможностей языка, и совместимость со старыми версиями обозревателей. Типичными примерами использования условной компиляции являются добавление в сценарий отладочного кода и трассировка исполнения сценария. Условная компиляция включается директивой @cc_on или директивами @if или @set. Директивы условной компиляции всегда следует помещать внутрь комментариев с тем, чтобы обозреватели, которые не поддерживают условную компиляцию (например, Netscape Navigator), их игнорировали. Пример:
/*@cc_on @*/ /*@if (@_jscript_version >= 4) alert("JScript версии 4 или выше"); @else @*/ alert("Ваш JScript устарел."); /*@end @*/
В этом примере использованы комментарии специального вида, которые используются только после директивы @cc_on. Браузеры, которые не поддерживают условную компиляцию, увидят здесь только строку alert("Ваш JScript устарел.") и исполнят ее.
Переменные условной компиляции
В директивах условной компиляции могут использоваться предопределенные переменные, перечисленные в приведенной ниже таблице. Если значение переменной отлично от true, то она не определена и ведет себя как NaN.
Переменная | Описание |
---|---|
@_win32 | true при выполнении в системе Win32 |
@_win16 | true при выполнении в системе Win16. |
@_mac | true при выполнении в системе Apple Macintosh. |
@_alpha | true при выполнении на процессоре DEC Alpha. |
@_x86 | true при выполнении на процессоре Intel |
@_mc680x0 | true при выполнении на процессоре Motorola 680x0. |
@_PowerPC | true при выполнении на процессоре Motorola PowerPC. |
@_jscript | Всегда true |
@_jscript_build | Номер сборки JScript. |
@_jscript_version | Номер версии JScript в формате m.n. |
Директивы условной компилляции:
@cc_on
Директива @cc_on включает условную компиляцию. Альтернативный способом включения условной компиляции является использование директив @if или @set, не заключенных в комментарий.
@if
Директива @if выполняет заданный фрагмент кода в зависимости от значения выражения.
Синтаксис:
@if (условие1) инструкции1 @elif (условие2) инструкции2 @else инструкции3 @end
Если условие1 истинно, то выполняются инструкции1. Если условие1 ложно, присутствует необязательная директива @elif и условие2 истинно, то выполняются инструкции2. В противном случае, если присутствует необязательная директива @else, то выполняются инструкции3; если ее нет, то управление передается следующему оператору. Данная директива может содержать несколько ветвей @elif, но все они должны предшествовать ветви @else.
Пример:
@if (@_win32) alert("Работаем в Windows NT/95/98") @else alert("Неизвестная операционная система!");
@set
Директива @set создает переменные условной компиляции. Имена таких переменных имеют синтаксис переменных JavaScript, но должны начинаться с символа "@". Значение, которое присваивается переменной, может быть любым выражением JavaScript (возможно с использованием ранее определенных переменных условной компиляции), которое возвращает числовое или логическое значение.
Синтаксис:
@set @переменная = значение
Примеры:
@set @var1 = 1 @set @var2 = (@var1 + 1) * 10; @set @var3 = @_jscript_version
Если переменная используется до ее определения, то она имеет значение NaN. Поскольку это единственное значение, которое не равно самому себе, то проверку определенности значения переменной следует делать так:
@if (@myVar != @myVar) …
Читать дальше: Примеры скриптов на JavaScript
.
Прокомментировать/Отблагодарить
Популярное:
- Анализ сайта
- Проверка email
- Чей IP-адрес?
- Чей домен?
- Где телефон?
- Генератор Sitemap
- Примеры Ajax
- Примеры PHP
- Примеры Javascript
- Примеры HTML, CSS
- Бесплатные прокси
- GEO-сервисы
- Сайт в ТОП (SEO)
- Полезные ссылки
- Генератор Robots.txt
Содержание:
- HTML
- Что такое HTML
- <!DOCTYPE>
- Мета теги в <head>
- Тег <base>
- Текст в html
- HTML списки
- Ссылки
- Картинки на сайте
- Таблицы
- Фреймы
- Формы
- DHTML
- Музыка
- Видео
- Карты изображений
- SVG карты
- Графика в HTML
- SSI .shtml
- Таблица цветов RGB
- Правильное
сочетание цветов - Таблица
«безопасных»
цветов - Таблица символов
- Примеры HTML, CSS
- CSS
- JavaScript
- PHP + MySQL
- Введение в PHP
- Основы языка
- Использование
массивов - $_server
- Создание функций
- Строки
- Функции работы
со строками - Объектное
программирование - Формы
- Файлы
- Загрузка файлов
на сервер - MySQL
- Cookie
- htaccess
- Безопасность
- Сессии
- Отправка почты
- Кэширование
- Дата, время
- Математические
функции - Дополнительные
возможности - Регулярные
выражения - Библиотека Curl
- IMAP, POP3, NNTP
- Оптимизация
- Примеры скриптов
- XML + XSLT
- AJAX
- Графика CorelDRAW
- SEO
- Сервисы
- Разное
- Движки сайтов (CMS)
- Регистрация
доменов и хостинг - Заработок для
web-мастеров - Хостинг
- Настройка DNS
- ADSL
- RSS
- ActiveX и HTML
- Паролирование
страницы - HTTP коды
- HTTP протокол
- HTTP заголовки
- Прячем ссылки
- ☠ Черный список
сайтов - ☭ Заработок
в интернете - Термины и
определения - Продажа доменов
- ✉ Настройки
Яндекс-почты - Кнопки социалок
- ☎ Настроки SIP
в телефоне - Создание
поискового плугина - Сервис
коротких ссылок - Telegram: бот, ссылки
- Шаблоны сайтов
- Друзья
- Задания к л/р
- Примеры
зачетных задач
- Статьи, обзоры
- Новости