Maison > interface Web > js tutoriel > le corps du texte

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

黄舟
Libérer: 2017-03-22 14:24:36
original
1703 Les gens l'ont consulté

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); // 输出 [],空数组,即被清空了
Copier après la connexion

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;
Copier après la connexion

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); // 输出 [],空数组,即被清空了
Copier après la connexion

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 = []; // 赋值为一个空数组以达到清空原数组
Copier après la connexion

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);
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal