Javascript document.getElementById(';elementid';)等还是elementid.etc?

Javascript document.getElementById(';elementid';)等还是elementid.etc?,javascript,html,Javascript,Html,而不是 HTML 使用元素而不将其id存储在变量中 它似乎工作得很好,我想它只是直接获取元素id,不需要声明任何变量,如果是这样的话,它是完全一样的,还是对我的脚本这样或那样做有任何偏见 编辑:嘿,伙计们,我将编辑这篇文章以进一步澄清 我知道通过存储该值,我就不必编写document.getElement。。。。。。。一直如此 问题是使用存储值或根本不存储直接使用元素id。是的,您可以这样做,因为username是一个全局变量 但这不是一个好的解决方案,因为其他插件可能会覆盖这个变量。docum

而不是

HTML 使用元素而不将其id存储在变量中

它似乎工作得很好,我想它只是直接获取元素id,不需要声明任何变量,如果是这样的话,它是完全一样的,还是对我的脚本这样或那样做有任何偏见

编辑:嘿,伙计们,我将编辑这篇文章以进一步澄清

我知道通过存储该值,我就不必编写document.getElement。。。。。。。一直如此


问题是使用存储值根本不存储直接使用元素id。

是的,您可以这样做,因为username是一个全局变量

但这不是一个好的解决方案,因为其他插件可能会覆盖这个变量。document.getElementByID是一种安全的方法

document.getElementById('username').classList.add('class');

将起作用,但如果需要使用该元素两次,则应首先存储该元素,以便它可以更快地执行。

如果只使用该元素一次,则可以使用:

document.getElementById('username').classList.add('class');
如果您多次使用此元素,则应将其存储到要使用的变量中,因为它可以帮助您更快地编写。您只需要保证没有任何内容会覆盖此变量


对于应该或不应该直接使用id。答案是否定的。原因有很多:如果具有特定id的元素不存在,那么getElementById将返回null,但直接使用id=>error;您可以将id与一些符号一起使用,例如-、+、,。。。所以在本例中,您可以通过getElementById调用它们;在这种情况下,您不能直接使用id;为了安全…

最后一段回答了这个问题,并澄清了许多问题,包括您的输入。不仅是为了快速编写代码,它的执行速度也明显更快。对于编译器,这个文档是.getElementById('username').classList.add('class');与var temp=document.getElementById('username')相同;临时类列表添加('class');它会自动为您生成一个临时变量。但每次这样做,它都会生成另一个变量,并且它必须再次读取DOM,这需要很高的时间成本。是的,如果我们越来越多地使用它,它的意义会更大。复制并粘贴。。。是的,我做了,哈哈。在我喝早茶之前回答问题真是太好了
<input type='text' id='username'>
username.classList.add('class');
document.getElementById('username').classList.add('class');
document.getElementById('username').classList.add('class');