为什么我们被教导将document.getElementById(“id”)分配给一个变量,然后将该变量与属性一起使用
Why are we taught to assign document.getElementById("id") to a variable and then use that variable with a property?
为什么教程教我们在两个语句中获取元素的属性,例如:
var sample = document.getElementById("sample");
var mySample = sample.value;
而不是像这样在一个语句中完成所有操作?
var mySample = document.getElementById("sample").value;
我知道,如果您需要访问同一元素的几个不同属性,这将导致更少的代码并使其更易于阅读,但是为什么即使只访问一个属性,人们也要这样做?
教程之所以这样做,是因为它们(通常)试图在特殊情况之前教授一般情况; 与单个属性相比,您需要访问多个属性的情况要多得多,并且内化一般规则(可能发生的最糟糕的事情是冗余代码行)比异常(问题不在于代码量或可读性)要好得多, 但是你做了很多不必要的函数调用,(尽管使用现代浏览器,你总是希望它们在内部得到优化)。
如果你已经学会了一般规则,你总是可以为简单的情况例外(如果你不这样做,就不会发生不好的事情)。
你真正应该问的是,为什么在这个现代浏览器时代,当对document.queryselector有广泛的支持时,教程会教授getElementById。
这取决于您需要在该对象上操作多少次/属性。你是对的 - 如果你只是获取/设置值,那么绝对使用你的第二个示例。通常必须操作多个属性,因此设置局部变量可以稍微提高性能,并有助于 DRY - 您不必重复 ID 的文本。
相关文章:
- 如何从单选按钮中获取多个值,然后将它们分配到单个变量中并在页面上显示
- 在Django中,可以在视图中创建一个包含js的变量,然后在循环模板标记中使用它
- 使用变量的名称,然后为该变量定义函数
- 在变量中保存值的最佳方法是在应用程序关闭后使用,然后使用apachecordova在android中重新启动
- 等待函数完成,然后将返回值分配给变量JS
- 如何更改javascript的一个变量,然后运行;“加载”;而无需重新加载页面
- 通过 AJAX 调用 PHP 文件,将 $_GET 变量传递到 MySQL 查询中,然后回显到响应中
- 为什么我们被教导将document.getElementById(“id”)分配给一个变量,然后将该变量与属性一起使用
- 流星技术/模式,用于等待数据库变量更改,然后在 in 之后执行某些操作
- 用我的名字创建一个变量.然后提醒字符串“hello-from”加上我创建的变量
- 从数组中删除元素,然后保留其状态以备将来使用,而不使用全局变量
- node.js将接收到的字符串拆分为不同的变量,然后格式化为json字符串
- 通过用户输入更改变量的值,然后在其他页面上重新使用
- C#WebBrowser控件-使用DOM创建和修改javascript变量,然后使用Applet读取它
- 将生成的随机数存储在变量中,然后将该变量作为文件名调用以显示图像.Javascript
- Javascript 返回过去 6 个月,然后将每个月用作变量
- 设置变量 if..然后是JavaScript
- 等到元素存在,循环,然后存储在变量中
- 如何将变量设置为文本输入,然后使其显示在屏幕上
- Javascript检查变量.然后每秒获得++