Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > атрибуты language и type


Автор: Gold Dragon 15.7.2004, 08:17
Есть ли смысл писать в коде эти атрибуты, без них всё равно все браузеры всё понимают

<script language="JavaScript" type="text/javascript">.......</script>

<script>....</script>

Автор: Се ля ви 15.7.2004, 10:17
Трудно сказать...

У меня вообще философия такая, что нужно всё писать чтобы все всё как можно лучше понимали - и ты сам в процессе, и браузеры и ковыряльщики, кто потом копаться в этом будут... А такие вещи просто увеличивают понятность :-)

"type" нужен, чтобы сказать, что ты именно на JS пишешь, а не на VBScript, скажем, или ещё на чём-то...

Атрибут "language" имеет более практическое зачение - можно указать номер версии javascript. Я, например, всегда декларирую, что использую Javascript1.2 (это соответствует, насколько я помню, NN4+ и IE4+), потому что люблю пользоваться оператором множественного выбора swith, не доступным в более ранних версиях. Ну и ещё всякие примочки, я уже всех и не упомню... try...catch по-моему тоже в 1.2 появился, хотя может и позже...
Так вот, а в старых браузерах, которые, скажем, поддерживают тока Javascript1.1 , этот скрипт тада не должен запуститься... поидее, хотя я не проверял...
Код
<script language="javascript1.2" type="text/javascript">
<!--//[CDATA[
   ...
   ...
   ...
//]]-->
</script>

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

Автор: Gold Dragon 15.7.2004, 11:01
Вопрос не в читаемости кода мной или юзером, а в читаемости браузером. Влияет ли это как-нить на скорость или на правильность понимания кода.

Такая же байда, например, с </LI>. Брауpер прочитав <LI> ищет </LI> и найдя <LI> автоматически закрывает предыдущую. Но в спецификации тяг </LI>. обязательный

ЗЫ
просто сейчас довожу до ума сайт и тут обратил внимание на то, что везде писал <script>....</script>

Автор: Sardar 15.7.2004, 14:21
Некоторые особенности JS менялись от версии к версии, например Array в одной версии получая один аргумент принимал его за начальный размер массива, в другой как первый элемент массива. По моему это не относится к ИЕ, ребята были более спокойны в этом плане.

Автор: mix 15.7.2004, 18:27
Се ля ви
Цитата
Я, например, всегда декларирую, что использую Javascript1.2 (это соответствует, насколько я помню, NN4+ и IE4+), потому что люблю пользоваться оператором множественного выбора swith, не доступным в более ранних версиях.

Ну и пользуйся им на здоровье, без language="javascript1.2".
Старые браузеры всё-равно проигнорируют твой скрипт как только встретят там неизвестный им оператор.

Red Dragon
Цитата
Но в спецификации тяг </LI>. обязательный

В спецификации чего HTML или XHTML?
Цитата
<script>....</script>

Просто добавь type='text/javascript', чтоб валидатор не ругался.

По поводу быстроты - чем меньше лишних тегов или аттрибутов
(особенно тех чьи значения и так прописаны в браузере по умолчанию) употребленно на странице тем быстрее происходит парсинг HTML.

}{отя ИМХО, быстрота в данном случае - это плохой приоритет.
Лучше позаботиться о компактности HTML кода, тогда диалапщики начнут тебя уважать smile.gif

Автор: Се ля ви 15.7.2004, 19:44
XHTML`ом надо писать IMHO...

Автор: mix 15.7.2004, 19:58
Цитата
XHTML`ом надо писать IMHO...

Чего писать? </LI>? Там нет никакого </LI>! Зато правда есть </li> smile.gif


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)