jQuery
从字符串创建 DOM 元素的首选 native 方法之一是使用新的 DOMParser
类。此示例摘自 MDN :
var parser = new DOMParser();
var doc = parser.parseFromString(aStr, "text/xml");
我想知道在解析字符串之前需要实例化解析器的额外步骤是否有任何特殊原因。 IE。为什么我们不能做类似 parseFromString(aStr, "text/xml");
的事情?
解析器对象看起来是多余的。 DOMParser constructor doesn't even have any arguments and its instances doesn't have any method other than parseFromString
.
最佳答案
如果我没记错的话,建立一个准备好解析文本的 DOM 解析器是一项昂贵的操作(内存方面),因此为了节省为您访问的每个页面/选项卡设置 DOM 解析器所造成的内存占用,浏览器将从它实例化的初始 DOM 解析器中清除内存(以解析文档的源代码),除非您再次实例化它,否则该内存将被清除。
如果需要,您可以使用您最喜欢的浏览器中的分析器工具来查看内存在实例化 DOM 解析器之前和之后的变化。
关于javascript - 为什么 DOMParser 需要被实例化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33064061/