getElementById() в JavaScript
Поиск по id
Метод document.getElementById() находит элемент по его идентификатору id. В аргумент передают значение id без символа #.
<h2 id="profile-title">Профиль</h2>
const title = document.getElementById('profile-title');
title.textContent = 'Настройки профиля';
В переменную title попадёт заголовок h2, и его текст изменится.
Значениеidдолжно быть уникальным на странице. Не пишитеgetElementById(‘#profile-title’): символ#используют только в CSS-селекторах.
Если элемент не найден
Если элемента с таким id нет в DOM, метод вернёт null. Когда элемент может отсутствовать, проверяйте результат перед работой с ним.
const message = document.getElementById('message');
if (message) {
message.textContent = 'Готово';
}
null можно получить из-за опечатки в id или потому, что скрипт выполнился раньше, чем браузер создал разметку. Для внешнего скрипта обычно используют атрибут defer.
getElementById() или querySelector()
Оба способа найдут один и тот же элемент:
document.getElementById('profile-title');
document.querySelector('#profile-title');
Используйте getElementById(), когда известен конкретный id. Метод querySelector() нужен, когда поиск выполняют по любому CSS-селектору: классу, тегу, атрибуту или вложенности элементов.
Итого
document.getElementById() находит элемент по уникальному id и возвращает его или null. В аргумент передают значение без #. Для более гибкого поиска по CSS-селектору используйте querySelector().