element.childNodes
и element.childNodes.length
: включает дочерние элементы, текстовые узлы (включая пробельные узлы между элементами) и комментарии (плюс потенциально CDATASections, ProcessingInstructions, DocumentTypes и EntityReferences, в зависимости от документа и анализатора). Определяется стандартом DOM Level 1 Core и уже много лет доступен в каждом браузере.
element.children
и element.childElementCount
: включает только узлов элементов, поэтому в некоторых случаях их проще обрабатывать. childElementCount
определяется стандартом Element Traversal API и доступен в последних версиях Mozilla, Opera и WebKit. children
не определен никаким стандартом, но доступен в IE и современных версиях Mozilla, Opera, WebKit и IE.