102 votes

JQuery vide() et remove()

Quelle est la différence entre empty() et remove()méthodes JQuery, et lorsque nous appelons une de ces méthodes, les objets créés seront détruits et la mémoire libérée?

162voto

nickf Points 185423
  • empty() va supprimer tout le contenu de la sélection.
  • remove() va supprimer la sélection et de son contenu.

Considérer:

<div>
    <p><strong>foo</strong></p>
</div>

$('p').empty();  // --> "<div><p></p></div>"

// whereas,
$('p').remove(); // --> "<div></div>"

Deux d'entre eux de supprimer les objets DOM et libérer la mémoire qu'ils prennent, oui.

56voto

Darin Dimitrov Points 528142

La documentation, l'explique très bien. Il contient également des exemples:

avant:

<div class="container">
  <div class="hello">Hello</div>
  <div class="goodbye">Goodbye</div>
</div>

.remove():

$('.hello').remove();

après:

<div class="container">
  <div class="goodbye">Goodbye</div>
</div>

avant:

<div class="container">
  <div class="hello">Hello</div>
  <div class="goodbye">Goodbye</div>
</div>

.empty():

$('.hello').empty();

après:

<div class="container">
  <div class="hello"></div>
  <div class="goodbye">Goodbye</div>
</div>

Aussi loin que la mémoire est concerné, une fois qu'un élément est retiré de la DOM et il n'y a pas plus de références à la ramasse-miettes de récupérer la mémoire lors de son exécution.

3voto

Atanas Korchev Points 20945

L' empty() méthode claire tous les nœuds enfants à partir de la correspondance des éléments. Toutefois, ces éléments qui correspondent restera dans les DOM. L' remove() méthode permet de supprimer les éléments qui correspondent depuis les DOM.

2voto

user1452840 Points 40

$("body").empty() -- il supprime les éléments du DOM HTML à l'intérieur de la balise body -

lorsque vous déclarez $("body").remove() - il supprimer l'ensemble du DOM HTML avec BALISE body .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X