在javascript中缓存onclick的对象

时间:2012-08-22 12:04:18

标签: javascript

是否有理由缓存myId,如下所示(假设对象myId仅用于此弹出功能,JavaScript中没有其他地方。)

var myId = document.getElementById('myId');
myId.onclick = function () {
  alert('button was clicked');
}

我认为onclick事件只会被设置一次并且没有必要。但我不确定。

3 个答案:

答案 0 :(得分:3)

缓存的唯一原因是,如果您希望将myid 元素用于,而不仅仅是绑定点击事件

通常会为这个原因缓存元素,这样可以节省性能,因为您不必多次搜索DOM树。

答案 1 :(得分:0)

通常最好将元素缓存一段时间以便最终使用它,但如果您确定不需要再次访问它,则没有理由将其保存以供日后使用。

答案 2 :(得分:0)

你只是在轨道上分配一个可能与另一个变量发生冲突的变量。如果你只设置一次回调,就这样做:

document.getElementById('myId').onclick = function () {
    alert('button was clicked');
}