DOMがリークする例

  1. DevToolsのProfilesパネルで「Take Heap Snapshot」を実行し、スナップショットを保存します。

  2. 「Create DOM Leak」ボタンをクリック、もしくは以下のスクリプトをDevToolsのコンソールで実行しDOMをリークさせます。

    
    window.detached = document.createElement('div');
    document.documentElement.appendChild(detached);
    document.documentElement.removeChild(detached);
    
    for (var i = 0; i < 1000; i++) {
      detached.appendChild(document.createElement('div'));
    }
            
  3. 再度ヒープのスナップショットを保存し、手順1で保存したスナップショットと比較しDetached DOM Treeが現れていることを確認します。

  4. 「Clear DOM Leak」ボタンをクリック、もしくは以下のスクリプトをDevToolsのコンソールで実行しリークしているDOMを解放します。

    
    window.detached = null;
            
  5. 再度ヒープのスナップショットを保存し、手順3で保存したスナップショットと比較しDetached DOM Treeが消えたことを確認します。