Heim > Web-Frontend > js-Tutorial > JS löscht ein Element im Array-Instanzcode

JS löscht ein Element im Array-Instanzcode

小云云
Freigeben: 2018-02-05 09:56:46
Original
1265 Leute haben es durchsucht

Dieser Artikel stellt Ihnen hauptsächlich eine JS-Methode zum Löschen eines Elements in einem Array vor. Sie hat einen guten Referenzwert und ich hoffe, dass sie für alle hilfreich ist. Folgen wir dem Herausgeber und schauen wir uns das an. Ich hoffe, es kann allen helfen.

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 zu finden Array. Das heißt, 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; 
};
Nach dem Login kopieren

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); 
} 
};
Nach dem Login kopieren

Auf diese Weise wird eine solche Funktion erstellt. Zum Beispiel habe ich ein Array :


var emp = [&#39;abs&#39;,&#39;dsf&#39;,&#39;sdf&#39;,&#39;fd&#39;]
Nach dem Login kopieren

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


emp.remove(&#39;fd&#39;);
Nach dem Login kopieren

Einen bestimmten Teil des Array-Elements löschen

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;]
Nach dem Login kopieren

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
Nach dem Login kopieren

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>
Nach dem Login kopieren

Nachdem die Löschmethode die Elemente im Array gelöscht hat, der Index wird markiert. Wenn der Wert auf undefiniert gesetzt ist, ändert sich die Länge des Arrays 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
Nach dem Login kopieren

Verwandte Empfehlungen:

PHP löscht das angegebene tiefgestellte Element im Array. Beispielcode

5 JavaScript-Algorithmen zum Löschen doppelter Elemente aus Arrays

Verwenden der PHP-Rekursion zum Löschen Nullelemente aus Arrays

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

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage