Почему консоль выводит html?

Есть такой код
<div id="box"></div>

Если прописать
console.log(box)

То в консоли выведется такой html код <div id="box"></div>
Почему так происходит? Переменная же нигде не объявлялась Что это за особенность такая?
  • Вопрос задан
  • 240 просмотров
Пригласить эксперта
Ответы на вопрос 1
voidnugget
@voidnugget
Программист-прагматик
Все элементы DOM дерева с объявленным id автоматически становятся атрибутами глобального объекта window. console.log(box); и console.log(window.box); - одно и тоже. Это стандартное поведение для cовременных браузеров (ES5+ afaik) и одна из причин по которой секторы на основе id выполняются медленее чем уникальные селекторы на основе сlass атрибута, привет БЭМ.

На примере этой же страницы можно вбить console.log(window.adriver_banner_403766071); в консоль браузера.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы