Heim  >  Artikel  >  Web-Frontend  >  So löschen Sie ein Element im JS-Array

So löschen Sie ein Element im JS-Array

亚连
亚连Original
2018-06-08 10:52:223320Durchsuche

Jetzt werde ich Ihnen eine JS-Methode zum Löschen eines Elements in einem Array vorstellen. Sie hat einen guten Referenzwert und ich hoffe, dass sie für alle hilfreich ist.

Ein im Array angegebenes Element löschen

Zuerst können Sie eine Funktion für das JS-Array-Objekt definieren, um die Position des angegebenen Elements im Array zu finden ist, der Index, der Code lautet:

Array.prototype.indexOf = function(val) { 
for (var i = 0; i < this.length; i++) { 
if (this[i] == val) return i; 
} 
return -1; 
};

Verwenden Sie dann, um den Index dieses Elements abzurufen, und verwenden Sie die inhärente Funktion des js-Arrays, um dieses Element zu löschen:

Der Code lautet:

Array.prototype.remove = function(val) { 
var index = this.indexOf(val); 
if (index > -1) { 
this.splice(index, 1); 
} 
};

Auf diese Weise habe ich eine solche Funktion erstellt, zum Beispiel habe ich ein Array:

var emp = [&#39;abs&#39;,&#39;dsf&#39;,&#39;sdf&#39;,&#39;fd&#39;]

Wenn wir das „fd“ darin löschen möchten, können wir Folgendes verwenden:

emp.remove(&#39;fd&#39;);

Gelöschtes Array Ein Element von

splice(index,len,[item]) Hinweis: Diese Methode ändert das ursprüngliche Array.

splice hat 3 Parameter, es kann auch verwendet werden, um einen oder mehrere Werte im Array zu ersetzen/löschen/hinzuzufügen

index: Array-Startindex len: Längenelement ersetzen/löschen: Ersatzwert: Wenn der Löschvorgang ausgeführt wird, ist das Element leer

Zum Beispiel: arr = ['a','b','c','d']

Löschen

//删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变) 
var arr = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
arr.splice(1,1); 
console.log(arr); 
//[&#39;a&#39;,&#39;c&#39;,&#39;d&#39;]; 
 
 
//删除起始下标为1,长度为2的一个值(len设置2) 
var arr2 = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;] 
arr2.splice(1,2); 
console.log(arr2); 
//[&#39;a&#39;,&#39;d&#39;]

Ersetzen

//替换起始下标为1,长度为1的一个值为‘ttt&#39;,len设置的1 
var arr = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
arr.splice(1,1,&#39;ttt&#39;); 
console.log(arr);   
//[&#39;a&#39;,&#39;ttt&#39;,&#39;c&#39;,&#39;d&#39;] 
 
 
var arr2 = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
arr2.splice(1,2,&#39;ttt&#39;); 
console.log(arr2);   
//[&#39;a&#39;,&#39;ttt&#39;,&#39;d&#39;] 替换起始下标为1,长度为2的两个值为‘ttt&#39;,len设置的1

Add----len ist auf 0 gesetzt, item ist der hinzugefügte Wert

var arr = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
arr.splice(1,0,&#39;ttt&#39;); 
console.log(arr);   
//[&#39;a&#39;,&#39;ttt&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;] 表示在下标为1处添加一项&#39;ttt&#39;<span style="font-size:14px;font-family:Arial, Helvetica, sans-serif;background-color:rgb(255,255,255);"> </span>

Nachdem die Löschmethode die Elemente im Array gelöscht hat, wird der tiefgestellte Wert auf undefiniert gesetzt und die Länge des Arrays ändert sich nicht

var arr = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
delete arr[1]; 
arr; 
//["a", undefined × 1, "c", "d"] 中间出现两个逗号,数组长度不变,有一项为undefined

Das Obige habe ich für alle zusammengestellt . Ich hoffe, dass es in Zukunft für alle hilfreich sein wird.

Verwandte Artikel:

Informationen zur Verwendung von Datepicker in vue2.0

JavaScript-Mediator-Modus (ausführliches Tutorial)

Wie verwende ich Dom-Elemente in jQuery?

Das obige ist der detaillierte Inhalt vonSo löschen Sie ein Element im JS-Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn