Javascript DOM 元素通过 id 访问而不使用函数

标签 javascript

我是 javascript 新手,所以在学习时我发现具有某些 id 的元素可用,就像

html部分

<canvas id="someid"><canvas>

js部分

someid.someProperty = something; // works as well as getElementById('someid')

但在所有教程中我发现它被告知使用 getElementById。 播种一种或另一种方法有什么好处?我应该选择哪种方式? 在 Firefox、Opera、DWB 和 geany 内部浏览器(webkit)中进行了检查。

最佳答案

在所有情况下都使用document.getElementById("whatever")。以下是一些相关问题:

使用自动全局变量存在以下问题:

  • 不是标准定义的行为
  • 并非所有浏览器都支持
  • 容易受到全局命名空间冲突的影响
  • 某些名称属性(但不是全部)可以这样使用
  • ID 和名称之间可能存在冲突
  • 代码的可读性较差,因为读者必须弄清楚您是否使用了之前已放入值的全局变量,或者这是否是自动定义的变量。

使用document.getElementById():

  • 受标准支持
  • 所有浏览器都支持
  • 不依赖任何全局变量
  • 所有用途中的行为都明确

关于Javascript DOM 元素通过 id 访问而不使用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21369731/

相关文章:

javascript - 你如何在 python 中使用 jsbeautifier 解压 javascript?

javascript - React 函数式组件(不再使用类组件)内部的箭头函数和常规函数有什么区别?

javascript - 如何在 react 选择上进行循环?

javascript - 在同一个对象中添加两个字符串属性(Uncaught ReferenceError)

javascript - VueX 商店最佳实践中的 VueJS 错误处理

具有默认功能和其他功能的 Javascript 对象

javascript - 如何在传单 map 上显示SQL查询

javascript - jquery从选择中加载内容

javascript - 使用 Chrome 扩展绕过 iFrame 检测

javascript - 推特抓取器