缩小document.getElementsByClassName的范围是否有切实的性能优势
Is there a tangible performance benefit to narrowing the scope of document.getElementsByClassName?
我有一个大量使用文档搜索的web应用程序,我想知道将document.getElementsByClassName转换为更窄的搜索(如$container.getElementsByClassName)是否有性能优势?
我知道不会有明显的优势,但我想知道是否有任何实际的好处。
需要注意的是,我没有使用任何库或依赖项,所以一切都是原生的js。
我也知道它会根据DOM节点的数量和许多其他因素而变化。让我们假设一个普通的web应用程序。
谢谢!
如果您一次又一次地引用同一个类元素,那么缓存容器将有利于提高性能。如果您只需要与该类交互一次,那么我不会说会有任何真正的性能优势。
根据我的经验,确实存在,尤其是在大页面上。
缩小范围的另一个好处是提高可读性。这与"全局变量与局部变量"基本相同。
相关文章:
- 它是否创建了许多不利于JavaScript性能的变量
- javascript getAttribute是否会影响性能或触发布局
- 缩小document.getElementsByClassName的范围是否有切实的性能优势
- 在运行Javascript/jQuery中的函数之前,检查元素是否存在是否更具性能
- socket.io (nodejs) 是否通过在回调完成期间阻止服务器来影响服务器性能
- 是否有适用于iOS和Android浏览器的性能指南
- 在节点 js 中编写命名函数的性能是否更高
- 最小化作用域链的长度是否会提高性能
- 如何提高javascript html5程序的整体性能:是否可以在两台计算机上同步两个版本
- 递归是否总是提高性能
- 主干:范围界定是否可提高性能
- “==”和“===”之间是否存在显著的性能差异
- 节点.js cron 是否会影响系统性能
- 将常用字符串定义为变量是否会提高性能
- 避免单个变量是否会加快 JavaScript 性能
- 在循环中缓存数组查找是否有任何性能提升
- 使用带有选择框的 jQuery 的 insertAfter() 是否存在已知的性能问题
- 出于性能原因,我是否应该避免多次执行相同的函数声明
- 在 AngularJS 中将对象推送到 $scope.array 与 var x = [ ] 相比时是否存在任何性能问题
- Javascript-命名空间嵌套是否存在任何硬性限制(或性能影响)