使用两个或多个$(document).ready会影响性能吗

Does it affect performance to use two or more $(document).ready.. ?

本文关键字:ready 影响 document 性能 两个      更新时间:2023-09-26

我正在做一个网站项目。项目负责人告诉我,保留两个或两个以上的$(document).ready是不对的。这会影响性能吗?我更喜欢保留多个$(document).ready,因为我有很多jquery代码,这是划分代码块的好方法。

这是一个额外的函数调用,因此它当然会影响性能。

它不会对它产生任何重大影响。它甚至可能不会以任何可衡量的方式影响它(考虑到典型计算机上影响浏览器中JS性能的所有其他变量)。

只要$(document).ready处理程序不重复功能,那么第二个处理程序的性能影响可能是不可接受的。

根据这个jsperf基准-http://jsperf.com/ready-callback-function-vs-document-ready-function/6-我运行Chrome的机器每秒可以分配大约325000个文档就绪处理程序。

它还有几个函数调用(ready方法、里面的函数以及处理程序本身),但这不会对性能产生显著影响。

这是划分代码块的好方法。

这就是为什么它应该被使用。不仅为了可读性和可维护性,而且处理程序将具有不同的作用域,垃圾收集可以更高效地工作,可以提高性能。

当然,实现这一目标可能还有更好的方法。分区应该使用模块模式(从ready事件加载工作,直到解释声明为止),然后您还可以在一个现成的处理程序中调用所有模块的init函数,而不是让每个模块安装自己的处理程序。