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

Как обработать два действия по кнопке

Можно использовать флаг или счетчик кликов. Например, при первом клике выполнять одно действие, при втором — другое:

javascript
let clickCount = 0;

button.addEventListener('click', () => {
  clickCount++;
  
  if (clickCount === 1) {
    console.log('Первое действие');
  } else if (clickCount === 2) {
    console.log('Второе действие');
    clickCount = 0; // Сброс для повторного использования
  }
});

Или с использованием булевого флага:

javascript
let isFirstClick = true;

button.addEventListener('click', () => {
  if (isFirstClick) {
    console.log('Первое действие');
    isFirstClick = false;
  } else {
    console.log('Второе действие');
    isFirstClick = true;
  }
});

Для более сложных сценариев можно использовать конечный автомат (state machine).

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

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

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

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