嗨,我正在慢慢做一个chrome扩展,我需要解析一些包含html实体的数据,我需要对其进行解码。我在这里看到一个可以使用的答案document.createElement
,所以我这样做了:
htmlDecode: function(input) {
if(/[<>]/.test(input)) { // To avoid creating tags like <script> :s
return "Invalid Input";
}
var e = document.createElement('div');
e.innerHTML = input;
return e.childNodes.length === 0 ? "" : e.childNodes[0].nodeValue;
}
但是我担心会document.createElement
留下元素,因为这个函数在后台脚本上运行,所以它不会经常刷新,它每 5 分钟运行大约 35000 次。
那么,由 创造的元素是被document.createElement
释放了,还是留下来了?我的意思是,我不会将它们附加到任何地方,而是将它们分配给局部变量,但我不确定。