Maison > Article > interface Web > méthode javascript pour supprimer les éléments du tableau et effacer le tableau
Cet article présente principalement des informations pertinentes sur la méthode simple de suppression d'éléments de tableau et d'effacement de tableau en javascript. Les amis qui en ont besoin peuvent s'y référer
La méthode simple de suppression d'éléments de tableau et d'effacement de tableau en javascript. javascript
1. Effacez le tableau
var ary = [1,2,3,4]; ary.splice(0,ary.length);//清空数组 console.log(ary); // 输出 [],空数组,即被清空了
2. >
var ary = [1,2,3,4]; ary.splice(0,1); 或 ary.splice($.inArray(2, ary), 1); 其中$.inArray(2, ary)用来查找某元素在数组中的索引位置。
Trois, plusieurs façons de supprimer des tableaux dans js
var arr=[‘a','b','c'];Si pour supprimer le 'b', il existe deux méthodes : **1, **méthode de suppression : supprimer arr[1]De cette façon , la longueur du tableau reste inchangée et arr [1] devient indéfini, mais cela présente également l'avantage que l'index du tableau d'origine reste inchangé. À ce stade, vous pouvez utiliser
<.>
for(index in arr) { document.write('arr['+index+']='+arr[index]); }
pour parcourir les éléments du tableau. Cette méthode de traversée ignore les éléments non définis
* Cette méthode est prise en charge par IE4.o et versions ultérieures
2, méthode d'épissage d'objet de tableau : arr.splice(1,1) ;
De cette façon, la longueur du tableau change en conséquence, mais l'index du tableau d'origine change également en conséquence
Le premier 1. dans le paramètre splice est l'index de départ pour la suppression (en comptant à partir de 0), Voici le deuxième élément du tableau
Le deuxième 1 est le nombre d'éléments supprimés ici, c'est-à-dire. 'b';
À ce stade, vous pouvez parcourir les éléments du tableau. Utilisez la méthode normale de parcours du tableau, comme pour, car les éléments supprimés ne sont pas conservés dans le
tableau
Cette méthode n'est prise en charge qu'après IE5.5
Il convient de mentionner que la méthode splice Lors de la suppression d'éléments de tableau, vous pouvez également ajouter de nouveaux éléments de tableau
Par exemple, arr.splice. (1,1,'d','e'), les deux éléments d et e sont ajoutés au tableau arr
Le tableau résultant devient arr:'a','d','e'. ,'c'
De plus, JavaScript tronque le tableau en définissant l'attribut length du tableau, ce qui est le seul moyen de raccourcir la longueur d'un tableau.
Si vous utilisez l'opérateur delete pour supprimer un élément du tableau, bien que cet élément devienne indéfini, la propriété length du tableau ne change pas. Il existe deux façons de supprimer un élément et la longueur. du tableau change également.
/* * 方法:Array.remove(dx) * 功能:删除数组元素. * 参数:dx删除元素的下标. * 返回:在原数组上修改数组 */ //经常用的是通过遍历,重构数组. Array.prototype.remove=function(dx) { if(isNaN(dx)||dx>this.length){return false;} for(var i=0,n=0;i<this.length;i++) { if(this[i]!=this[dx]) { this[n++]=this[i] } } this.length-=1 } a = ['1','2','3','4','5']; alert("elements: "+a+"nLength: "+a.length); a.remove(0); //删除下标为0的元素 alert("elements: "+a+"nLength: "+a.length);
/* * 方法:Array.baoremove(dx) * 功能:删除数组元素. * 参数:dx删除元素的下标. * 返回:在原数组上修改数组. */ //也可以用splice来实现. Array.prototype.baoremove = function(dx) { // www.jb51.net if(isNaN(dx)||dx>this.length){return false;} this.splice(dx,1); } b = ['1','2','3','4','5']; alert("elements: "+b+"nLength: "+b.length); b.baoremove(1); //删除下标为1的元素 alert("elements: "+b+"nLength: "+b.length);
dans IE5 ou version antérieure Dans la version de JavaScript, l'objet Array ne fournit pas de méthode toute faite pour supprimer des éléments de tableau. Dans la version IE5.5, bien qu'il existe une méthode d'épissage, elle ne supprime pas un ou plusieurs éléments, mais efface uniquement la valeur d'un ou plusieurs éléments, ce qui signifie que l'élément existe toujours. du tableau n’a pas changé.
En fait, vous pouvez ajouter vous-même une méthode de suppression au tableau (notez que cela fait référence à la suppression d'un élément du tableau des membres du tableau). Peut-être penserez-vous à utiliser une boucle pour réaffecter le tableau. C'est certainement possible, mais c'est très inefficace.
Ce qui suit présente comment utiliser les deux méthodes slice et concat de l'objet Array pour personnaliser la suppression du tableau.
Array.prototype.del=function(n) { //n表示第几项,从0开始算起。 //prototype为对象原型,注意这里为对象增加自定义方法的方法。 if(n<0) //如果n<0,则不进行任何操作。 return this; else return this.slice(0,n).concat(this.slice(n+1,this.length)); /* concat方法:返回一个新数组,这个新数组是由两个或更多数组组合而成的。 这里就是返回this.slice(0,n)/this.slice(n+1,this.length) 组成的新数组,这中间,刚好少了第n项。 slice方法: 返回一个数组的一段,两个参数,分别指定开始和结束的位置。 */ } //自己增加的方法 var test=new Array(0,1,2,3,4,5); test=test.del(3); //从0算起,删除第4项。 alert(test);
Merci d'avoir lu, j'espère que cela pourra vous aider, merci pour votre soutien à ce site !
Pour plus d'articles sur le javascript sur la façon de supprimer des éléments de tableau et d'effacer des tableaux, veuillez faire attention au site Web PHP chinois !