document.getElementsByClassName
Авторы конспекта:
1. Введение: от одного элемента к целой группе 🔢
У нас есть кнопки для цифр и кнопки для операций: +, -, *, /. Чтобы заставить их работать с
помощью JavaScript, мы нашли каждую кнопку по её уникальному id, а затем вручную собрали их в
один массив.
Проблема масштабируемости и поддержки кода.
Профессиональный разработчик всегда думает наперед: что будет, если кнопок станет не четыре, а десять? Наш код должен быть готов к таким изменениям без переписывания.
2. Что такое HTML-класс и зачем он нужен? 🏷️
В HTML атрибут class — это как «ярлык» или «метка», которую можно повесить сразу на несколько
элементов, чтобы объединить их в одну логическую группу.
В нашем случае класс нужен не столько для оформления (хотя для CSS это его основное назначение),
сколько для того, чтобы JavaScript мог легко идентифицировать и найти всю группу нужных нам
объектов.
Давайте добавим всем нашим кнопкам операций один и тот же класс, например, operations-button.
Теперь, когда у всех наших кнопок есть общий «ярлык», мы можем использовать специальную команду в
JavaScript, чтобы собрать их все вместе.
3. Команда document.getElementsByClassName()📜
Для поиска группы элементов в JavaScript существует специальный метод —
document.getElementsByClassName(). Эта команда проходит по всему документу и возвращает не
один элемент, а специальный объект — «живую» коллекцию HTMLCollection. Для наших целей важно
понимать, что она очень похожа на массив: её элементы тоже пронумерованы по индексам ([0], [1],
[2]), и по ней можно пробежаться циклом.

Основные свойства этой коллекции:
- 📋 Похожа на массив: элементы в ней можно получить по их порядковому номеру (индексу), например: [0], [1], [2].
- 🌐 Содержит все элементы: внутри находятся все
HTML-элементы, у которых есть указанный класс. - 🔄 «Живая» коллекция: если вы с помощью
JavaScriptдобавите на страницу новый элемент с этим же классом, он автоматически появится в этой коллекции. И наоборот. Теперь, чтобы найти все наши кнопки, достаточно написать всего одну строку кода:
4. Обработка массива кнопок 🖱️
После получения массива кнопок можно назначить им обработчики событий с помощью цикла:
5. Ключевые выводы 📝
- Класс в
HTML— это как общая метка для группы элементов. - Команда
document.getElementsByClassName('имя-класса')находит сразу все элементы с этой меткой. - Результат — коллекция, с которой можно работать как с единым целым (например, в цикле), применяя одинаковые действия ко всем элементам сразу.
- Использование этого подхода делает код короче, чище и проще для поддержки.


