Допустим, у меня есть очень простая страница с телом, одним div и элементом абзаца внутри с некоторым текстом.
<body>
<div>
<p>some text</p>
<div>
</body>
В зависимости от браузера элементы body/div будут иметь текстовые узлы (nodeType === 3, nodeValue === "--blank--"). Однако элемент P будет иметь допустимый текстовый узел с nodeValue === "some text".
Что мне интересно, так это то, что это "nodeValue" (--blank--) "поддельного" текстового узла, который представляет собой пробел, равный, поскольку я хочу написать тест if, который позволит мне отфильтровать поддельные текстовые узлы .
Пример:
var body = document.getElementsByTagName("body")[0]; // shortcut to body element.
console.log(body.childNodes[0].nodeValue) // maps to one of the fake text nodes that are blank.
// returns a blank line. What is that "blank" equal to? It's not 'null' or "" or undefined...
Привет, Алекс