Heim >Web-Frontend >js-Tutorial >Javascript-Methode zum Löschen von Array-Elementen und zum Löschen des Arrays
In diesem Artikel werden hauptsächlich relevante Informationen zur einfachen Methode zum Löschen von Array-Elementen und zum Löschen des Arrays in Javascript vorgestellt. Freunde, die es benötigen, können darauf verweisen
Die einfache Methode zum Löschen von Array-Elementen und zum Löschen des Arrays in Javascript
1. Löschen Sie das Array
var ary = [1,2,3,4]; ary.splice(0,ary.length);//清空数组 console.log(ary); // 输出 [],空数组,即被清空了
2. Löschen Sie die Array-Elemente
var ary = [1,2,3,4]; ary.splice(0,1); 或 ary.splice($.inArray(2, ary), 1); 其中$.inArray(2, ary)用来查找某元素在数组中的索引位置。
Drei verschiedene Möglichkeiten, Arrays in js zu löschen
var arr=[‘a','b','c'];
Wenn Sie das „b“ löschen möchten, gibt es zwei Methoden:
**1, **Löschmethode: arr[1] löschen
Auf diese Weise , die Länge des Arrays bleibt unverändert und arr [1] wird undefiniert, aber es hat auch den Vorteil, dass der Index des ursprünglichen Arrays unverändert bleibt. Zu diesem Zeitpunkt können Sie
for(index in arr) { document.write('arr['+index+']='+arr[index]); }zum Durchlaufen der Array-Elemente
Diese Methode wird erst nach IE5.5 unterstützt
Es ist erwähnenswert, dass die Splice-Methode beim Löschen von Array-Elementen auch neue Array-Elemente hinzufügen kann
Zum Beispiel arr.splice (1,1,'d','e'), die beiden Elemente d und e werden dem Array arr hinzugefügt
Das resultierende Array wird zu arr:'a','d','e' ,'c'
Darüber hinaus kürzt JavaScript das Array, indem es das Längenattribut des Arrays festlegt. Dies ist die einzige Möglichkeit, die Länge eines Arrays zu verkürzen.
Wenn Sie den Löschoperator verwenden, um ein Element im Array zu löschen, ändert sich die Längeneigenschaft des Arrays nicht, obwohl dieses Element undefiniert wird. Es gibt zwei Möglichkeiten, ein Element und die Länge zu löschen des Arrays ändert sich ebenfalls.
/* * 方法: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);
in IE5 oder niedriger In In der JavaScript-Version bietet das Array-Objekt keine vorgefertigte Methode zum Löschen von Array-Elementen. In der Version von IE5.5+ gibt es zwar eine Spleißmethode, diese löscht jedoch nicht ein bestimmtes Element (oder mehrere Elemente), sondern löscht nur den Wert eines bestimmten Elements (oder mehrerer Elemente), was bedeutet, dass das Element noch vorhanden ist existiert, hat sich die Länge des Arrays nicht geändert.
Tatsächlich können Sie dem Array selbst eine Löschmethode hinzufügen (beachten Sie, dass sich dies auf das tatsächliche Entfernen eines Elements des Arrays aus den Array-Mitgliedern bezieht). Vielleicht denken Sie darüber nach, das Array mithilfe einer Schleife neu zuzuweisen. Dies ist zwar möglich, aber sehr ineffizient.
Im Folgenden wird vorgestellt, wie Sie die beiden Methoden Slice und Concat des Array-Objekts verwenden, um das Löschen des Arrays anzupassen.
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);
Vielen Dank fürs Lesen, ich hoffe, es kann Ihnen helfen, vielen Dank für Ihre Unterstützung dieser Website!
Weitere Artikel zum Thema Javascript zum Löschen von Array-Elementen und zum Löschen von Arrays finden Sie auf der chinesischen PHP-Website!