JS об'єкт debugger
Загальний опис
debugger
— це спеціальний оператор JavaScript, який дозволяє зупинити виконання коду в конкретному місці для налагодження. Коли інтерпретатор досягає рядка з debugger
, виконання коду призупиняється, і браузер відкриває інструменти розробника (DevTools), якщо вони доступні та активні. Ця точка зупинки дає змогу програмісту аналізувати значення змінних, стан програми та виконувати діагностику помилок.
Розглянемо приклад:
let x = 10;
let y = 20;
debugger; // Виконання зупиняється тут
let sum = x + y;
console.log(sum);
Коли код виконується, виконання призупиняється на рядку з debugger
, і ви можете переглянути значення x
, y
та інші аспекти стану програми в інструментах розробника.
Оператор корисний для швидкого встановлення точки зупинки без необхідності додавання її вручну в інтерфейсі DevTools. Його можна використовувати в будь-якому середовищі, де доступний налагоджувач, включаючи браузери та Node.js.
Важливо пам'ятати, що debugger
працює лише у середовищах, де інструменти розробника доступні і ввімкнені. У продакшн-коді використання цього оператора не рекомендується, оскільки він може викликати небажані зупинки програми.
Порада: | Використовуйте |
Порада: | Якщо ви використовуєте цикли або функції,
|
Порада: | Не забувайте видаляти |
Синтаксис
debugger;
Переглядачі
Переглядач | |||||
---|---|---|---|---|---|
5 |
1 |
5 |
10 |
12 |
Переглядач | ||||
---|---|---|---|---|
4.4 |
18 |
4 |
4.2 |
Переглядач | ||
---|---|---|
0.10.0 |
1.0 |
Приклади
Користувач вводить текст у поле і натискає кнопку. Код зупиняється на операторі debugger
, дозволяючи розробнику перевірити значення змінної userInput
. Після цього текст виводиться на екран або з’являється повідомлення про помилку. Цей підхід допомагає налагоджувати роботу з формами та ввідними даними.
Цей приклад демонструє, як використовувати debugger
для аналізу складної структури об'єктів під час їх обробки.
const data = {
user: {
name: 'Олексій',
stats: {
level: 15,
experience: 3200
}
}
};
function processData(obj) {
debugger; // Зупинка для аналізу стану об'єкта
console.log(`User Level: ${obj.user.stats.level}`);
}
processData(data);
Оператор debugger
використовується для налагодження окремого кроку функціонального ланцюжка. Ви можете перевірити проміжний результат перед передачею до наступної функції.
function step1(value) {
debugger; // Зупинка для перевірки результату step1
return value + 10;
}
function step2(value) {
return value * 2;
}
function execute() {
let result = step1(5);
result = step2(result);
console.log(result);
}
execute();