Иллюстрированный самоучитель по созданию сайтов


Дополнительные операторы JavaScript - часть 2


На экран при этом выводится (с помощью метода document.write) имя свойства (q), и, после знака равенства, значение свойства — (navigator[q])

. Таким образом, можно узнать о свойствах, о существовании которых мы до этого даже не подо зревали!

Вот, например, что нам покажет броузер Internet Explorer версии 5.0, если загрузить в него эту страницу:

appCodeName=Mozilla appMinorVersion=0 appName=Microsoft Internet Explorer appVersion=4.0 (compatible; MSIE 5.0; Windows 98; DigExt) cookieEnabled=true cpuClass=x86 mimeTypes=

onLine=true opsProfile= platform=Win32 plugins= systemLanguage=ru userAgent=Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt) userLanguage=ru userProfile=

Как видите, свойств довольно много. Некоторые из них, правда, дублируют друг друга. Например, свойство appMinorVersion — это число, стоящее после точки в appVersion (номер подверсии). А значение свойства userAgent состоит из комбинации значений appCodeName и appVersion. Кстати, различные броузеры покажут нам не только различные значения свойств, но и представят различный их набор. Вот, например, результат загрузки той же страницы в броузер Netscape 6:

appCodeName=Mozi1 la appName=Netscape appVersion=5.0 (Windows; en-US) language=en-US mimeTypes=[object MimeTyi " •Array] platform=Windows plugins=[object PluginArray] securityPolicy=

userAgent=Mozilla/5.0 (Windows; N; Win98; en-US; ml4) Netscape6/ 6. Obi

cookieEnabled=true

Таким образом, оператор цикла for...in можно использовать не только для сокращения времени “стучания по клавиатуре”, но и для исследования броузера!

Кстати, условный оператор if также имеет сокращенную форму записи, которую в некоторых случаях удобно применять (особенно если условие и выполняемые действия достаточно компактны). Для этого следует про сто написать условие, затем поставить знак вопроса, и после него указать действие, выполняемое в случае правильности условия. Затем, после двое точия, можно указать действие, выполняемое в противном случае.

Например, вместо:

if (a<=100) some function(a) ; else alert("Число превышает допустимое значение!");

можно написать так:

(а<=100) ? some function(a) : alert("Число превышает допустимое значение!");

Здесь some_function() — просто какая-то функция, определенная где-то на веб-странице.




Начало  Назад  Вперед