javascript - document.getElementById ('elementid' ).etc 还是 elementid.etc?

标签 javascript html

代替

HTML

<input type='text' id='username'>

JavaScript

var username = document.getElementById('username'); <!-- IS IT REQUIRED? -->
username.classList.add('class');


我可以吗?

HTML

<input type='text' id='username'>

JavaScript

username.classList.add('class');

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

它似乎工作正常,我想它只是直接获取元素 id 而不需要声明任何变量,如果是这样,它是否完全相同或者它是否对我的脚本以这种或另一种方式产生影响?

编辑:大家好,我将对此进行编辑以澄清更多内容。

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

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

最佳答案

如果你只使用这个元素一次,你可以使用:

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

如果你多次使用这个元素,你应该把它存储到一个变量中使用,因为它可以帮助你写得更快。您只需要保证没有任何内容会覆盖此变量。

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

关于javascript - document.getElementById ('elementid' ).etc 还是 elementid.etc?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44246139/

相关文章:

javascript - 在 javascript 中从客户端浏览器访问 Bloomberg API

javascript - 如何解决输入范围 slider 的跨浏览器兼容性问题?

javascript - 在移动设备上禁用 jQuery datepicker,输入类型 ="date"

javascript - 如何存储不完整的多步骤表单?

html - 将图像添加到 css3 按钮并提交

javascript - 如何在提交时停止焦点(模糊)?对于电话间隙

javascript - stackoverflow 列表中有趣的元素背景颜色 - 强制更改

javascript - 我应该在哪里存储 JWT token ?

html - 使用 less css 的增量文件名

javascript - 如何在 Javascript 中创建一个新行?