Maison  >  Article  >  interface Web  >  Introduction détaillée à trois façons d'effacer des tableaux en JavaScript

Introduction détaillée à trois façons d'effacer des tableaux en JavaScript

黄舟
黄舟original
2017-03-22 14:24:361682parcourir

Cet article présente principalement trois façons d'effacer des tableaux en JavaScript. A une très bonne valeur de référence. Jetons un coup d'oeil avec l'éditeur ci-dessous

Méthode 1, épissure

var ary = [1,2,3,4]; 
ary.splice(0,ary.length); 
console.log(ary); // 输出 [],空数组,即被清空了

Méthode 2, la longueur est attribuée à 0

Cette méthode est très intéressante. Dans d'autres langages comme Java, la longueur du tableau est en lecture seule et ne peut pas être assignée. Par exemple,

int[] ary = {1,2,3,4}; 
ary.length = 0;

signalera une erreur en Java et ne parviendra pas à compiler.

En JS, c'est possible, et le tableau est effacé, comme

var ary = [1,2,3,4]; 
ary.length = 0; 
console.log(ary); // 输出 [],空数组,即被清空了

Actuellement, la méthode clear des tableaux dans Prototype et la méthode vide des tableaux dans la bibliothèque mootools utilisent cette méthode pour effacer les tableaux.

Méthode 3, attribuez la valeur à []

var ary = [1,2,3,4]; 
ary = []; // 赋值为一个空数组以达到清空原数组

La méthode clear de la classe Ext.CompositeElementLite de la bibliothèque Ext utilise cette méthode pour effacer.

La méthode 2 conserve les autres attributs du tableau, contrairement à la méthode 3.

Beaucoup de gens pensent que la méthode 2 est plus efficace car elle ne fait que réaffecter la longueur, tandis que la méthode 3 recrée un objet. Après test, c’est précisément la méthode 3 qui est la plus efficace. Code du test :

var a = []; 
for (var i=0; i< 1000000; i++){ 
 a.push(i); 
} 
var start = new Date(); 
//a = []; 
a.length = 0; 
var end = new Date(); 
alert(end - start);

Résultat du test :

IE6 IE7 IE8 IE9 Firefox Safari Chr
  IE6 IE7 IE8 IE9 Firefox Safari Chrome
a.length=0 94 29 14 1 4 3 1
a=[] 0 0 0 0 0 0 0
ome
a.length=0 94 29 14 1 td> 4 3 1
a=[] 0 0 0 0 0 0 0

Comme le montrent les résultats ci-dessus : la méthode 3 est plus rapide et plus efficace.

À en juger par les résultats des tests, la méthode utilisée par Ext est plus recommandée si d'autres attributs du tableau d'origine ne sont pas conservés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn