JavaScriptでremoveChildしたElementはどうなっているのか

JavaScriptelement.removeChild()ってのがある。element配下の消したい要素childを引数に渡せば、そのelementからchildが消えるってことで、よくよく使うと思う。ただこれ見た目消えてるだけでchildオブジェクトが削除されているわけではないようだ。

<!DOCTYPE html>
<html>
<head>
    <title>test</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
  </head>
<body>
<p id="hoge1">show</p>
<p id="hoge2">HOGE</p>
<p id="hoge3">toire</p>
</body>
</html>

このHTMLで下記を実行してもちゃんとinnerHTMLを得ることができる

var hogeElement = document.getElementById('hoge2');
hogeElement.parentNode.removeChild(hogeElement);
console.log(hogeElement.innerHTML);

removeChildしたオブジェクトが消えていると思ってコードを書いてバグになったので改めて意識した

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA