我想知道给定本机 js 和 jquery 事件处理程序,从内存消耗/性能的角度来看,我应该选择哪一个?假设我有这个html代码,一个简单的按钮。
<button id="herp">derp</button>
愿意
herp.onclick = function()
{
alert('hey');
}
比
$("#herp").click(function()
{
alert('hey');
});
?
尽管这是邪恶的过早微优化 -
-
jQuery非常大量地包装本机事件以规范浏览器兼容性问题,因此总是(稍微)慢
一点 DOM3 风格的
addEventListener
应该优先于 DOM0.onxxx
,但不是出于我知道的任何性能或内存原因
分析差异。如果你只做一次,你甚至无法分辨出区别,那么没关系。
如果您执行一百万次,请查看速度和内存消耗的差异并做出决定。
尽量避免过早优化。
如果页面由于其他原因已经包含 jQuery,则添加一个事件处理程序不会对内存消耗/性能产生任何显着影响。
另一方面,如果页面出于任何其他原因不需要jQuery,那么没有jQuery的页面会更小/更快。