Javascript div 的长度表示未定义

Javascript length of a div says undefined

我有一个 div,ID user。当我检查它的长度时,它说未定义,即使它存在。

<div id="user"></div>

我使用纯 javascript 如下所示。

var user = document.getElementById("user").length;
console.log(user);

知道如何在不使用 jQuery 的情况下检查长度吗?

您似乎想检查元素是否存在。

如果是单个 DOM 元素(不是集合),则无需检查长度。

var user = document.getElementById("user");
var divExists = user != null;
alert(divExists);
<div id="user"></div>

注意:使用返回 NodeList, like querySelectorAll 的函数时,检查长度可能会有用。

getElementById returns 1 个元素(如果找到)或 null,并且未定义 Dom 元素的 length 属性,这就是原因你得到 undefined。 所以你基本上只需要检查元素是否存在...

var user = document.getElementById("user");
if (user) { //... Whatever }

Returns a reference to the element by its ID; the ID is a string which can be used to identify the element; it can be established using the id attribute in HTML, or from script. [...] If there is no element with the given id, this function returns null.

cfr。 https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementById