Выбор элементов DOM в консоли Chrome - программирование

Выбор элементов DOM в консоли Chrome

Я немного озадачен следующим: пусть говорят, что у меня есть элемент абзаца с идентификатором para. Использование консоли Chromes, если я скажу

document.getElementById("para")

Я возвращаюсь с фрагментом HTML <p id="para">....</p>, тогда как если я использую, например, метод выбора D3 библиотеки Javascript и скажу

d3.select("#para")

Я возвращаюсь с DOM node и могу получить доступ ко всем свойствам и методам элемента абзаца.

Почему это различие?

4b9b3361

Ответ 1

По умолчанию при регистрации DOM node в Chrome он отображается как разметка. Для регистрации DOM node в качестве обычного объекта используйте console.dir. Причина d3.select("#para") показывает, что обычный объект заключается в том, что этот метод, вероятно, не возвращает DOM node, а объект, который обтекает DOM node.

console.dir(document.getElementById("para"));