javascript - GetElementById 与 Dom 迭代

标签 javascript dom typescript

假设我有一个很小的 ​​ID 列表(大约 10 个),我想在 Html 页面中获取相应的元素。

我应该在每个 ID 上使用 getElementbyId() ,还是可以像这样迭代 DOM:

for (var i = 0; i < element.childNodes.length; i++)
{
    var childNode = <HTMLElement>element.childNodes[i];

    if (this.Ids.indexOf(node.id, 0) >= 0)
            this.collection.setValue(node.id, <HTMLInputElement>node)

    if (childNode.childNodes.length > 0)
        this.iterateHtmlNodes(task, childNode);
}
  • 哪种方法最快?
  • 哪个是最好的方法?
  • 如果我要提取的元素数量较多 (>100) 怎么办?

我正在使用 TypeScript。

最佳答案

无论如何,使用 GetElementById 都会更快,因为它在浏览器中使用 native 函数支持。

关于javascript - GetElementById 与 Dom 迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17426416/

相关文章:

javascript - 如何通过jquery通配符搜索数据属性的精确包含值?

javascript - 如何为彼此增值?

dom - Angular 2 @ViewChild 返回未定义

typescript - 如何将值限制为对象的键?

JavaScript - 使用 selenium-webdriver 将内部 html 返回给变量?

javascript - 使用 Node 将大数组写入文件

javascript - 如何获取 html 树的 #text 节点数组

javascript - 通过 innerHTML 动态添加的 CSS 文件加载结束的事件

typescript - 如何使用 RootState 修复切片的循环依赖关系?

javascript - ES6中未实现哪些 typescript 功能?