Ответ 1
Короткий ответ здесь: "Потому что ничего не добавить". Хотя вы правы, что d3.selectAll("p")
и d3.select("body").selectAll("p")
будут выбирать одни и те же существующие узлы, выбор элемента body
сначала устанавливает контекст для новых узлов, добавленных с помощью метода .append()
.
Без выбора body
у вас нет точки в дереве DOM для вставки ваших узлов - я предполагаю, что d3 пытается добавить новые узлы к объекту document
, что приводит к HIERARCHY_REQUEST_ERROR
здесь.