17. JS с нуля, ваще с нуля (event.currentTarget)

Оценить качество материала и подачу материала автором видео:

Front-end

Трудоустройтесь middle front-end разработчиком на React JS (TypeScript) за 12-16 месяцев обучения с ежедневной менторской поддержкой в формате видео 1 на 1 и коммерческими проектами в портфолио

Перейти на курс
Front-end

Back-end

Трудоустройтесь middle back-end разработчиком за 12-16 месяцев обучения с ежедневной менторской поддержкой в формате видео 1 на 1 и коммерческими проектами в портфолио

Перейти на курс
Back-end

Карьерный бустер

Получите коммерческий опыт на реальных стартапах, прокачайте tech & soft навыки, научитесь работать в команде, проходить собеседования и получите первую работу в IT!

Перейти на курс
Карьерный бустер

Основы Front-end

Сделайте первый шаг в IT, освоив базовые знания разработки и научившись создавать небольшие проекты на JavaScript

Перейти на курс
Основы Front-end

Основы Back-end

Сделайте первый шаг в IT, освоив базовые знания разработки. Без опыта. Без математики. Только практика: JavaScript, SQL, Node JS, база данных

Перейти на курс
Основы Back-end

Event.currentTarget

Автор конспекта: Стогниева Виктория

1. Эволюция и оптимизация кода 🔄

  • Постепенное улучшение: даже простые программы постоянно дорабатываются и структурируются.
  • Кажущаяся сложность: на ранних этапах улучшения могут восприниматься как избыточное усложнение.
  • Формирование привычек: важно с самого начала писать код правильно, даже для простых задач.
index.js
function makeOperation(operationCode) {
  var number1 = Number(input1.value)
  var number2 = Number(input2.value)
 
  if (operationCode === "+") {
    var result = number1 + number2
  } else if (operationCode === "-") {
    var result = number1 - number2
  } else if (operationCode === "*") {
    var result = number1 * number2
  } else if (operationCode === "/") {
    var result = number1 / number2
  } else {
    window.alert("operation is unknown")
  }
  window.alert(result)
}
index.html
<div class="input-block">
  <label>Number 1</label>
  <input type="number" value="100" id="number1" />
</div>
<div class="input-block">
  <label>Number 2</label>
  <input type="number" value="5" id="number2" />
</div>

2.Унификация обработчиков событий 🎯

  • Ключевая цель: замена множества обработчиков одним универсальным.
  • Исходная проблема: 4 отдельных обработчика для математических операций.

3. Объект события (Event Object) ℹ️

Важные концепции:

  • Автоматическая передача: при вызове функции-обработчика передается объект события.
  • Содержание объекта: информация о событии (координаты, элемент, тип события и т.д.).

Event.currentTarget— свойство объекта события в JavaScript, которое соответствует элементу, на котором установлен обработчик события.

Важно: всегда используйте event.currentTarget когда вам нужен элемент, к которому прикреплен обработчик события!

Определение элемента-инициатора:

javascript
function onOperationButtonClick(eventObject) {
  const clickedElement = eventObject.currentTarget
  const operation = clickedElement.innerHTML
  makeOperation(operation)
}

4. Методы отладки: debugger🐞

Ключевое слово debugger создает точку останова в коде - при выполнении кода с открытыми инструментами разработчика браузера выполнение автоматически приостанавливается на этой строке, позволяя провести пошаговую отладку, анализировать текущие значения переменных и выполнение стека вызовов.

debugger

Важно: всегда удаляйте debugger

Боевой маршрут (JS Ваще с нуля)

Видеоурок - 18 видео из 29