Heim > Web-Frontend > js-Tutorial > So löschen Sie ein Element im Javascript-Array

So löschen Sie ein Element im Javascript-Array

藏色散人
Freigeben: 2023-01-06 11:12:13
Original
16454 Leute haben es durchsucht

So löschen Sie ein Element im Javascript-Array: Definieren Sie zunächst eine Funktion für das Javascript-Array-Array-Objekt, um die Position des angegebenen Elements im Array zu ermitteln. Löschen Sie dann den Index des Elements. Dürfen.

So löschen Sie ein Element im Javascript-Array

Die Betriebsumgebung dieses Artikels: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

js löscht ein Element im Array

Löschen eines im Array angegebenen Elements

Zunächst können Sie eine Funktion für das js-Array-Objekt definieren, um die Position des angegebenen Elements im Array zu ermitteln , 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

Dann verwenden Sie den Index dieses Elements und verwenden Sie die eigene 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 'fd' löschen möchten, können wir Folgendes verwenden:

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

Ein Element des Arrays löschen

splice(index,len,[item]) Hinweis: Diese Methode wird Ändern Sie das ursprüngliche Array.

splice hat 3 Parameter und kann auch zum Ersetzen/Löschen/Hinzufügen eines oder mehrerer Werte im Array verwendet werden·

Index: Array-Startindex len: Länge des Ersetzungs-/Löschvorgangs Element: Ersetzungswert, Löschvorgang Wenn Das Element ist leer. Zum Beispiel: arr = ['a', 'b', 'c','d'] wird hinzugefügt Der Wert von

//删除起始下标为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

2: delete

delete Nach dem Löschen des Elements im Array wird der unter dem Array markierte Wert auf undefiniert gesetzt und die Länge des Arrays ändert sich nicht

//code from http://caibaojian.com/js-splice-element.html
//替换起始下标为1,长度为1的一个值为‘ttt’,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’,len设置的1
Nach dem Login kopieren

Update 2016-11 -17: High on stackoverflow In den Unterantworten habe ich einen Code gesehen, der von John Resig, dem Vater von JQuery, in einem Artikel geschrieben wurde:

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

Hier sind einige tatsächliche Anwendungsfälle:

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

Dieses Beispiel ist dem ziemlich ähnlich Das erste oben, aber es gibt kein Prüfelement. Das spezifische Element wird basierend auf der tiefgestellten Position des Elements im Array gefunden und gelöscht.

Empfohlenes Lernen: „

Javascript-Tutorial für Fortgeschrittene

Das obige ist der detaillierte Inhalt vonSo löschen Sie ein Element im Javascript-Array. 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