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

В чем разница между Listener и Observer

Listener и Observer оба используются для реагирования на события, но есть ключевые различия:

  1. Связь с источником:
    • Listener обычно привязан к конкретному событию (например, click).
    • Observer может следить за изменениями состояния объекта.
  1. Количество событий:

    • Listener обрабатывает одно событие.
    • Observer может отслеживать несколько изменений.
  2. Примеры:

javascript
// Listener (Event Listener)
button.addEventListener('click', () => console.log('Clicked!'));

// Observer (IntersectionObserver)
const observer = new IntersectionObserver(entries => {
  entries.forEach(entry => console.log(entry.isIntersecting));
});
observer.observe(element);
  1. Паттерны:
    • Listener - часть Event-Driven подхода.
    • Observer реализует паттерн Observer (издатель-подписчик).

Listener'ы проще, Observer'ы мощнее и гибче для сложных сценариев.

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

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

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

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