javascript – 我应该将document.getElementById()缓存在变量中还是每次调用?

前端之家收集整理的这篇文章主要介绍了javascript – 我应该将document.getElementById()缓存在变量中还是每次调用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有很多元素生成和引用(鼠标悬停,点击,位置更改)很多次.

我手头有这些元素的ID.将document.getElementById(ID)调用存储在变量中是明智的,还是每次调用document.getElementById()时更快/更快/更快?

var app = [];
var app.elements = []; 
//i can store ['id1','id2','id3']
//OR ['id1' => document.getElementById('id1'),'id2' => document.getElementById('id2'),'id3' => document.getElementById('id3')]

解决方法

您当然应该尽可能重用参考,但是您可能需要在每个功能体中获得新的引用.

例:

var e1 = document.getElementById('id1');
e1.innerHTML = 'test';
e1.className = 'info';

如果延长引用时间,您可能会发现它们不再工作.例如,如果您为该页面的一部分获取innerHTML并将其重新存储,则该部件中的所有元素都将被删除并重新创建.如果您引用该部分的其中一个元素,该元素将不再存在.

// This will recreate all elements inside the 'parent' element:
document.getElementById('parent').innerHTML += 'test';

猜你在找的JavaScript相关文章