繁体   English   中英

缓存HTML字符串或DOM元素? [关闭]

[英]Cache HTML string or DOM elements? [closed]

我正在使用javascript开发文件管理器类型的应用程序。 我执行ajax请求以获取目录的内容,并且我正考虑将其缓存到变量中,以防万一用户导航到另一个目录然后又回来了(所以我不必再次请求该列表)。 但是我应该在变量中存储什么? HTML元素对象还是HTML字符串? 哪个使用更少的浏览器内存?

严格来说,字符串会占用更少的浏览器内存。

但是,我总是建议缓存DOM元素而不是字符串。 HTML仅应用于从服务器获取内容,而不应用于客户端操作。

重新连接一组分离的DOM节点几乎是即时的,并且这些节点仍然可以附加附加的数据和事件处理程序,如果这些节点已序列化为HTML然后再次反序列化,则这些数据和事件处理程序将丢失。

我建议您只存储JavaScript对象。 我认为渲染HTML节点不需要花费很多时间。 但是节点本身是相当重的对象。 存储HTML字符串根本没有任何意义,因为浏览器仍然必须将其解析为DOM节点。 因此,这等同于存储JS对象。

从内存管理的角度来看,管理DOM节点也要困难得多。 忘记分离事件处理程序以对节点的引用进行空化是非常容易的。 因此,恕我直言,完全清理DOM节点并利用它们比管理所有情况都容易。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM