Встречается на собеседованиях • сегодня

Как работает Event в браузере

События (Events) в браузере работают по механизму Event Loop и используют модель всплытия (bubbling) и погружения (capturing).

  1. Фазы события:
    • Capturing (погружение) - событие идет от window к целевому элементу
    • Target - достижение целевого элемента
    • Bubbling (всплытие) - событие поднимается от целевого элемента к window
  1. Обработчики:
javascript
element.addEventListener('click', handler, {capture: true}); // capturing phase
element.addEventListener('click', handler); // bubbling phase (по умолчанию)
  1. Event Loop:
    События попадают в очередь (Callback Queue) и обрабатываются когда Call Stack пуст.

  2. Делегирование:
    Можно обрабатывать события на родителе, используя event.target:

javascript
parent.addEventListener('click', (e) => {
  if(e.target.matches('.child')) {
    // handle child click
  }
});

События могут быть остановлены через e.stopPropagation() или e.stopImmediatePropagation().

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы