Как проверить, включён ли JavaScript в браузере
Зачем это проверять
JavaScript отвечает за интерактивность современных сайтов: обновление содержимого без перезагрузки, валидацию форм на клиенте, динамические интерфейсы и одностраничные приложения. Без него часть функциональности может быть недоступна. Проверка нужна пользователям, администраторам и разработчикам, чтобы понять причину нарушений и выбрать способ исправления.
Быстрые публичные тесты
- JavaTester — простой универсальный тест, упоминаемый в исходном материале. Он проверяет поддержку Java Applets и JavaScript и выводит результат на страницу после полной загрузки.

Для проверки JavaScript найдите третий пункт в списке и посмотрите значение рядом с надписью Is Java enabled? — true означает, что JavaScript включён. Если указано false, проверьте наличие и настройки Java, а также расширения браузера, которые могут блокировать скрипты.
Важно: Java и JavaScript — разные технологии; совпадение в названии вводит в заблуждение.
Ещё один быстрый тест от JavaTester показывает чистый результат true/false:

Если нужен детальный отчёт о возможностях браузера, используйте Browser Hawk — веб-приложение для анализа браузерных возможностей.
Ниже пример вывода из Firefox 3.6.3 (из исходной статьи):

Все перечисленные онлайн-тесты быстро определяют, включён ли JavaScript. Для отправки простому пользователю лучше выбирать самый наглядный тест — второй тест от JavaTester из примера.
Локальный быстрый тест
Если вы контролируете страницу или можете дать пользователю маленький фрагмент для вставки, используйте комбинацию тега noscript и простого скрипта. Пример:
JavaScript: неизвестно
Как это работает: если JavaScript включён, скрипт изменит текст в элементе и браузер не покажет содержимое тега noscript. Если скрипт не выполнится, пользователь увидит сообщение внутри noscript.
Как понять, что идёт не так
- Если тест возвращает false, проверьте расширения, блокирующие JavaScript (NoScript, uBlock Origin в строгом режиме и т. п.).
- Проверьте настройки безопасности и политики корпоративной сети (прокси, GPO), которые могут блокировать выполнение скриптов.
- Убедитесь, что браузер не работает в режиме, который блокирует исполнение (жёсткие настройки приватности, режим экономии трафика на мобильных).
- Иногда Content Security Policy (CSP) сервера запрещает inline-скрипты — это не значит, что весь JavaScript выключен, но может нарушить конкретную страницу.
Важно: отсутствие Java (платформа) не равно отключённому JavaScript в браузере.
Альтернативные подходы
- DevTools: откройте консоль и выполните console.log(‘JS работает’) или проверьте typeof window === ‘object’.
- Feature-detection: проверяйте конкретные API, например ‘querySelector’ in document или ‘fetch’ in window — такие проверки полезны для progressive enhancement.
- Серверная валидация: не полагайтесь только на клиентский JS для безопасности; всегда дублируйте проверки на сервере.
- Метрики: отправляйте небольшой запрос на сервер при загрузке страницы с JS, чтобы статистически отслеживать процент пользователей с выключенным JavaScript.
Чек-лист по ролям
Для пользователя:
- Перезагрузите страницу.
- Отключите расширения, блокирующие скрипты.
- Проверьте настройки браузера и режим приватности.
Для системного администратора:
- Проверьте, не блокирует ли прокси или межсетевой экран выполнение скриптов.
- Проверьте политики групп (GPO) и настройки корпоративного софта.
Для разработчика:
- Добавьте информативный noscript для пользователей без JS.
- Обеспечьте graceful degradation и progressive enhancement.
- Логируйте ошибки и измеряйте долю трафика с отключённым JavaScript.
Мини-методология тестирования для сайта
- Вставьте локальный HTML-скрипт и проверьте поведение на тестовом устройстве.
- Запустите сценарии для разных браузеров и устройств (мобильные и десктопы).
- Соберите телеметрию: процент загрузок без успешного выполнения клиентских скриптов.
- Проверьте влияние расширений и прокси на тестовую выборку.
Дерево принятия решения
graph TD
A[Начало] --> B{Показывает ли тест true?}
B -- Да --> C[JavaScript включён. Проверяйте функциональность]
B -- Нет --> D{Появляется ли сообщение noscript?}
D -- Да --> E[Пользователь отключил JS. Предложить инструкции по включению]
D -- Нет --> F[Блокировка расширениями или сеть. Проверить настройки]
E --> G[Показать страницу с инструкциями]
F --> GКритерии приёмки
- Тест корректно показывает true для современных браузеров с включённым JavaScript.
- Пользователь с отключённым JavaScript получает понятное сообщение и инструкции по включению.
- Сайт сохраняет базовую доступность при отключённом JavaScript.
Короткая справка
- JavaScript — язык программирования, выполняющийся в браузере и на сервере (например, Node.js); отвечает за интерактивность веб-страниц.
- Java — отдельная платформа и язык, редко используемый в браузерах сегодня.
Важно: если вы собираете телеметрию по наличию JavaScript, не включайте в логи конфиденциальные данные и соблюдайте местные правила приватности.
Если вы разработали собственный тест или страницу — поделитесь ссылкой, чтобы другие могли её проверить.
Короткий план действий при проблеме:
- Отключите расширения, блокирующие скрипты.
- Включите JavaScript в настройках браузера.
- Проверьте CSP и серверные заголовки.
- Свяжитесь с администратором сети, если проблема остаётся.
Конец.
Похожие материалы
Освещение в Blender: Area и IBL
Ограничение зарядки ноутбука — продление жизни батареи
LibreOffice для студентов: бесплатный офис навсегда