У всех есть JavaScript, да?
- Пользователь набрал в браузере URL веб-приложения.
- Страничка загрузилась?
- «Ни у одного пользователя нет JS, пока не скачались скрипты» — Джейк Арчибальд
- HTTP-запросы получения скриптов выполнены успешно?
- Если пользователь едет в поезде и соединение пропадает до того, как загрузились скрипты, то считайте, что JavaScript у него нет.
- HTTP-запросы получения скриптов завершились?
- Сколько раз вы сталкивались с тем, что мобильный браузер вечно грузил страничку и загружал её мгновенно после обновления?
- Корпоративный файервол не блокирует JavaScript?
- Я спрашиваю об этом потому, что многие из них именно так и делают. До сих пор.
- Интернет-провайдер или мобильный оператор не изменяет скачиваемый JavaScript?
- Sky случайно блокировал jQuery, Comcast добавляет рекламу в скрипты, и если вы с этим не сталкивались, то поезжайте в аэропорт и попробуйте использовать там wifi.
- Пользователи не отключили JavaScript?
- Люди всё ещё так делают.
- У пользователя нет плагинов или расширений, которые вставляют скрипты или меняют DOM там, где вы этого точно не ожидаете?
- Есть тысячи браузерных расширений. Вы уверены, что они ничего не делают с вашим JS?
- CDN работает?
- Суть CDN именно в том, чтобы быть надежным, но минута в месяц, когда он не работает всё же оставит без скриптов тех пользователей, кто в эту минуту загружают вашу страничку.
- Браузер поддерживает JavaScript который вы написали?
- Воспользуйтесь Can I Use, чтобы проверить.
-
Вы на все вопросы ответили «да»?
Тогда, да, JavaScript работает. Возможно.
Прогрессивное улучшение. Потому что иногда JavaScript просто не работает.
Стоит быть к этому готовым.