我想知道本机 js 和 jquery 事件处理程序,从内存消耗/性能的角度来看,我应该选择哪一个?假设我有这个 html 代码,一个简单的按钮。
<button id="herp">derp</button>
将
herp.onclick = function()
{
alert('hey');
}
优于
$("#herp").click(function()
{
alert('hey');
});
?
我想知道本机 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 的页面会更小/更快。