【问题标题】:getElementById vs $('#element') vs window.document.links[n]getElementById vs $('#element') vs window.document.links[n]
【发布时间】:2015-10-17 15:09:35
【问题描述】:

我认为快速的顺序是:

  1. 元素数组: document.links[0] // 0 是正确的索引
  2. 原生 JavaScript 按 ID 获取:document.getElementById('linkid')
  3. JQuery 选择器:$('#linkid')

我说的对吗?

是否有工具或方法来测试此类疑虑的性能?

谢谢!

【问题讨论】:

    标签: javascript jquery arrays performance


    【解决方案1】:

    直到/如果 jsperf 重新上线,您可以使用benchmark.js。这是 jsperf 在内部用来衡量性能的。

    如果您担心性能问题,javascript 优化可能不是答案,但上下文是关键。

    即使用 document.getElementById$('#') 与加载和不加载 jQuery 相比,没有什么区别。

    在您的示例中,您的性能顺序是正确的,但是您的第一个案例 document.links[0] 是编写代码的不好方法,与 getElementById 相比,它更难维护和阅读,并且对 html/dom 更改不灵活.

    【讨论】:

    • 该页面用于 android 应用程序中的 webview,它根本不会改变并且非常简单,所以这就是我考虑 document.links[0] 选项的原因。感谢 benchmark.js 库,我不知道。
    猜你喜欢
    • 2013-06-01
    • 2014-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多