Quelqu'un peut-il expliquer la différence conceptuelle entre les deux. Lisez quelque part que le second crée un nouveau tableau en détruisant toutes les références au tableau existant et le .length = 0 vide juste le tableau. Mais cela n'a pas fonctionné dans mon casDifférence entre Array.length = 0 et Array = []?
//Declaration
var arr = new Array();
Le code suivant est le code de bouclage qui s'exécute encore et encore.
$("#dummy").load("something.php",function(){
arr.length =0;// expected to empty the array
$("div").each(function(){
arr = arr + $(this).html();
});
});
Mais si je remplace le code avec arr =[]
en place de arr.length=0
il fonctionne très bien. Quelqu'un peut-il expliquer ce qui se passe ici.
Pourquoi votre code 'arr = mise en boucle arr + $ (this) .html();'? Si vous ajoutez des éléments à votre tableau, vous devriez utiliser 'Array.push()' à la place. – BoltClock
C'est marrant parce qu'il y a déjà une réponse 9 upvoted, mais c'est encore ** peu clair ** ce que l'int OP est – galambalazs
@Bolt - Je viens de donner l'exemple du code ici, le code original ajoute dynamiquement les éléments au tableau J'ai choisi d'ajouter les éléments à array au lieu de push(). Cela fait-il beaucoup de différence dans ce que je cherche? –