请看以下代码片段:
var cites = document.getElementsByTagName('cite');
console.log(cites.length);
cites[0].outerHTML = "[" + cites[0].innerText + "]";
console.log(cites.length);
<cite>ASDF</cite>
<cite>FDSA</cite>
console.log
调用打印不同的值(分别为2和1),这是因为将元素的outerHTML
属性赋值时,数组的第一个元素被从数组中删除了。为什么会这样?