var paragraphElement = document.createElement('p');
paragraphElement
DOM にありません。どうすれば削除できますか? removeChild
DOM 内にある場合に使用できることはわかっています。paragraphElement
私はDOMに追加してから削除する傾向はありません。解決策はありますか?
ありがとうございました。
var paragraphElement = document.createElement('p');
paragraphElement
DOM にありません。どうすれば削除できますか? removeChild
DOM 内にある場合に使用できることはわかっています。paragraphElement
私はDOMに追加してから削除する傾向はありません。解決策はありますか?
ありがとうございました。
オブジェクトが参照されなくなった場合、ガベージ コレクションの対象としてマークされます。そのため、有効なコンテキストを離れ、p
要素が他の方法で参照されていない場合、ガベージ コレクションは次に実行されるたびにメモリを解放します。ガベージ コレクションがこれをどのように達成するかは、JavaScript エンジンによって異なります。
、または usep
のような新しい非参照値を割り当てることもできます。メモリから子を削除するのではなく、DOM からのみ削除しますが、このノードに他の参照がない場合は、ガベージ コレクションのために子を解放することに注意してください。0
p = null
.removeChild
詳細については、MDN: メモリ管理を確認してください。
DOM にない場合は、それへの JS 参照をクリアするだけで、ガベージ コレクターがそれを削除します。これは基本的に、javascript オブジェクトまたは javascript 配列と同じです。それへの参照をクリアすると、ガベージ コレクターによってクリーンアップされます。
したがって、次のように作成する場合:
var paragraphElement = document.createElement('p');
次に、それを取り除くためにあなたがしなければならないことは、その参照が明らかであることです:
var paragraphElement = null;
要素への JavaScript 参照がない場合、ガベージ コレクターは要素を削除します。