JavaScript можно запускать прямо в браузере - это самый быстрый способ проверить идею, увидеть результат и разобраться, почему код работает не так, как ожидается. Для этого используют DevTools (инструменты разработчика) и Console (консоль).
DevTools - что это и где находится
DevTools - встроенный набор инструментов браузера для разработки и отладки. В большинстве браузеров (Chrome, Edge, Firefox) DevTools открывается так:
- F12
- Ctrl+Shift+I (Windows/Linux)
- Cmd+Option+I (macOS)
Внутри DevTools чаще всего нужны вкладки:
- Console - запуск кода, просмотр логов и ошибок
- Sources - просмотр файлов, точки останова (breakpoints), пошаговая отладка
- Network - запросы к серверу (пригодится позже)
Console - быстрый запуск кода
Console позволяет выполнять JavaScript сразу, без файла и без сборки.
Пример - простые выражения:
2 + 2
"Hello".toUpperCase()
Math.max(10, 7, 25)
Console также удобно использовать для проверки значений:
const price = 1200;
const discount = 15;
price - (price * discount) / 100
console.log и полезные методы
Чаще всего применяют console.log() для вывода значений и промежуточных результатов.
const user = { id: 7, name: "Alex", role: "admin" };
console.log(user);
console.log("role:", user.role);
Дополнительно полезны:
console.warn("Предупреждение");
console.error("Ошибка");
console.table([{ a: 1, b: 2 }, { a: 3, b: 4 }]);
console.time("calc");
for (let i = 0; i < 100000; i++) {}
console.timeEnd("calc");
console.clear() очищает консоль, а кнопка очистки есть и в интерфейсе DevTools.
Как запускать код на странице
Есть три базовых подхода: через Console, через snippet, и через файл на странице.
1) Запуск через Console
Подходит для коротких проверок и экспериментов.
document.title
document.querySelectorAll("a").length
Если ввести несколько строк, обычно используется Shift+Enter для переноса строки без выполнения, а Enter - для выполнения (поведение зависит от браузера).
2) Snippets - маленькие скрипты внутри DevTools
Snippets - это сохраненные фрагменты кода, которые можно запускать повторно:
- DevTools -> Sources -> Snippets
- Создать новый snippet
- Вставить код и запускать по необходимости
Пример snippet, который подсвечивает все ссылки на странице:
document.querySelectorAll("a").forEach((a) => {
a.style.outline = "2px solid orange";
});
3) Подключение скрипта в HTML
Так код становится частью страницы. Обычно подключают файл script.js:
<script src="/script.js"></script>
Если скрипт работает с DOM (ищет элементы на странице), часто ставят атрибут defer, чтобы код выполнялся после разбора HTML:
<script src="/script.js" defer></script>
Ошибки в Console - как читать и понимать
Когда что-то ломается, браузер показывает ошибку в Console. Важно уметь быстро понять:
- что именно произошло
- в какой строке
- из какой цепочки вызовов пришли к ошибке (stack trace)
Самые частые типы ошибок
SyntaxError - синтаксис написан неверно, код не может выполниться.
// Пример: пропущена закрывающая скобка
if (true) {
console.log("ok");
ReferenceError - обращение к переменной, которой не существует в текущей области видимости.
console.log(total); // total не объявлена
TypeError - операция применяется к значению неподходящего типа.
const n = 10;
n.toUpperCase(); // у числа нет такого метода
Stack trace - зачем он нужен
Stack trace - список вызовов функций, который показывает путь к ошибке. Обычно в ошибке есть:
- сообщение (что случилось)
- файл и строка
- цепочка вызовов
Пример, который часто дает понятный stack trace:
function formatName(user) {
return user.name.trim();
}
function printUser(user) {
return formatName(user);
}
printUser(null);
В ошибке будет видно, что проблема возникла внутри formatName, а вызов пришел из printUser.
Отладка через Sources - точки останова и пошаговый режим
Console показывает последствия, а вкладка Sources помогает остановить выполнение кода и посмотреть, что происходит “внутри”.
Основные шаги:
- Открыть Sources
- Найти файл со скриптом
- Кликнуть по номеру строки, чтобы поставить breakpoint
- Обновить страницу или запустить нужное действие
- Использовать кнопки Step over / Step into для пошагового выполнения
Что полезно смотреть во время отладки:
- значения переменных (панель Scope)
- call stack (цепочка вызовов)
- Watch expressions (выражения для наблюдения)
Несколько привычек, которые экономят время
- Ошибка в Console - это не просто текст, а ссылка на строку в файле (по клику открывается Sources на нужном месте).
- Если в логах много шума, удобно включать фильтры и очищать консоль перед проверкой.
console.logлучше ставить рядом с местом, где меняется значение, а не только в конце.- Если код выполняется слишком рано и не находит элементы, стоит проверить, подключен ли скрипт с
defer.
Короткий итог
DevTools - главный инструмент для запуска и отладки JavaScript в браузере. Console подходит для быстрых проверок и чтения ошибок, а Sources - для пошаговой отладки и поиска причин.