Heim >Web-Frontend >js-Tutorial >So löschen Sie Array-Elemente in Javascript
Methode: 1. Verwenden Sie delete, die Syntax lautet „arr löschen [den Index des Elements löschen]“ 2. Verwenden Sie pop(), die Syntax lautet „arr.pop()“; Die Syntax lautet „arr.splice (Startposition, Anzahl der gelöschten Elemente)“ 4. Verwenden Sie die Prototyp-Prototyp-Methode.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.
In JavaScript ist neben Object wahrscheinlich der Array-Typ (Array) der am häufigsten verwendete Typ. Arrays in JavaScript sind im Vergleich zu Arrays in anderen Sprachen sehr flexibel. Diese Art von Flexibilität hat Vor- und Nachteile. Der Vorteil besteht darin, dass sie kreativ ist und verschiedene flexible Lösungen bieten kann. Der Nachteil besteht darin, dass sie leicht hirnlos ist, weil sie tatsächlich zu flexibel ist ist unkontrollierbar und verrückt.
Nachdem wir uns zuvor über ein paar Worte lustig gemacht haben, kommen wir zurück zum Punkt. Hier sind 5 Methoden zum Löschen von Array-Elementen in JavaScript, nämlich die Verwendung des Schlüsselworts „delete“, der Stapelmethode „pop()“, der Warteschlangenmethode „shift()“ und der Operationsmethode „spleiß()“. und Prototyp-Prototyp-Methode.
delete-Schlüsselwort
JavaScript stellt ein delete
-Schlüsselwort zum Löschen (Löschen) von Array-Elementen bereit. delete
关键字用来删除(清除)数组元素。
var colors = ["red", "blue", "grey", "green"]; delete colors[0]; console.log(colors); // [undefined, "blue", "grey", "green"]
要注意的是,使用delete删除元素之后数组长度不变,只是被删除元素被置为undefined
了。
pop()栈方法
JavaScript中的Array对象提供了一个pop()
栈方法用于弹出并返回数组中的最后一项,某种程度上可以当做删除用。
栈数据结构的访问规则是FILO
(先进后出),栈操作在栈顶添加项,从栈顶移除项,使用pop()方法,它能移除数组中的最后一项并返回该项,并且数组的长度减1。
var colors = ["red", "blue", "grey"]; var color = colors.pop(); console.log(color); // "grey" console.log(colors.length); // 2
可以看出,在调用pop()方法时,数组返回最后一项,即”grey”,数组的元素也仅剩两项。
splice()操作方法
在JavaScript的Array对象中提供了一个splice()
方法用于对数组进行特定的操作。splice()恐怕要算最强大的数组方法了,他的用法有很多种,在此只介绍删除数组元素的方法。在删除数组元素的时候,它可以删除任意数量的项,只需要指定2个参数:要删除的第一项的位置和要删除的项数。
var colors = ["red", "blue", "grey"]; var color = colors.splice(0, 1); console.log(color); // "red" console.log(colors); // ["blue", "grey"]
可以看出,在调用了splice(0, 1)方法时,数组从第一项开始,删除了一项。
prototype原型方法
可以通过在Array的原型上添加方法来达到删除的目的。
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; }; var colors = ["red", "blue", "grey"]; colors.remove(1); console.log(colors); // ["red", "grey"]
这种方法其实就是自己实现一个删除的逻辑,然后把删除方法添加给了Array的原型对象,则在此环境中的所有Array对象都可以使用该方法。尽管可以这么做,但是不推荐在产品化的程序中修改原生对象的原型。道理很简单,如果只是某个实现中缺少某个方法,就在原生对象的原型中添加这个方法,那么当在另一个支持该方法的实现中运行代码时,就可能导致命名冲突。而且这样做可能会意外地导致原生方法被重写。
shift()队列方法
JavaScript中的Array对象提供了一个shift()
队列方法用于弹出并返回数组中的第一项,某种程度上也可以当做删除用。
队列数据结构的访问规则是FIFO
var colors = ["red", "blue", "grey"]; var color = colors.shift(); console.log(color); // "red" console.log(colors.length); // 2Es ist zu beachten, dass nach der Verwendung von delete zum Löschen eines Elements die Länge des Arrays unverändert bleibt, das gelöschte Element jedoch auf
undefiniert
gesetzt wird.
🎜Das Array-Objekt in JavaScript stellt eine pop()
-Stapelmethode zum Öffnen und Zurückgeben des letzten Elements im Array bereit wie zum Löschen. 🎜🎜Die Zugriffsregel der Stapeldatenstruktur lautet FILO
(First In, Last Out). Die Stapeloperation fügt Elemente oben im Stapel hinzu und entfernt Elemente oben im Stapel pop()-Methode, die Elemente aus dem Array entfernen kann. Das letzte Element wird zurückgegeben und die Länge des Arrays wird um 1 verringert. 🎜rrreee🎜Es ist ersichtlich, dass das Array beim Aufruf der Methode pop() das letzte Element zurückgibt, das „grau“ ist, und nur noch zwei Elemente im Array vorhanden sind. 🎜🎜🎜splice()-Operationsmethode 🎜🎜🎜 stellt eine splice()
-Methode im Array-Objekt von JavaScript bereit, um bestimmte Operationen am Array auszuführen. splice() ist wahrscheinlich die leistungsstärkste Array-Methode. Sie kann auf viele Arten verwendet werden. Hier stellen wir nur die Methode zum Löschen von Array-Elementen vor. Beim Löschen von Array-Elementen kann eine beliebige Anzahl von Elementen gelöscht werden, indem nur zwei Parameter angegeben werden: die Position des ersten zu löschenden Elements und die Anzahl der zu löschenden Elemente. 🎜rrreee🎜Es ist ersichtlich, dass beim Aufruf der splice(0, 1)-Methode ein Element aus dem Array gelöscht wird, beginnend mit dem ersten Element. 🎜🎜🎜Prototyp-Prototyp-Methode🎜🎜🎜 kann gelöscht werden, indem dem Prototyp des Arrays eine Methode hinzugefügt wird. 🎜rrreee🎜Diese Methode besteht eigentlich darin, selbst eine Löschlogik zu implementieren und dann die Löschmethode zum Array-Prototypobjekt hinzuzufügen. Dann können alle Array-Objekte in dieser Umgebung diese Methode verwenden. Obwohl dies möglich ist, wird davon abgeraten, den Prototyp eines nativen Objekts in einer Produktionsanwendung zu ändern. Der Grund ist einfach. Wenn in einer bestimmten Implementierung eine Methode fehlt und Sie diese Methode zum Prototyp des nativen Objekts hinzufügen, kann es zu einem Namenskonflikt kommen, wenn der Code in einer anderen Implementierung ausgeführt wird, die diese Methode unterstützt. Dies kann dazu führen, dass native Methoden versehentlich überschrieben werden. 🎜🎜🎜🎜shift()-Warteschlangenmethode🎜🎜🎜Das Array-Objekt in JavaScript stellt eine shift()
-Warteschlangenmethode zum Öffnen und Zurückgeben des ersten Elements im Array bereit, was auch für ein bestimmtes Element erfolgen kann Umfang Wird zum Löschen verwendet. 🎜🎜Die Zugriffsregel der Warteschlangendatenstruktur lautet FIFO
(First In, First Out). Die Warteschlange fügt Elemente am Ende der Liste hinzu und entfernt Elemente vom Anfang der Liste ()-Methode, die das Array entfernen kann und das erste Element im Array zurückgibt, wobei die Länge des Arrays um eins verringert wird. 🎜rrreee🎜Es ist ersichtlich, dass das Array beim Aufruf der Shift()-Methode das erste Element zurückgibt, das „rot“ ist, und dass nur noch zwei Elemente im Array übrig sind. 🎜🎜Verwandte Lernempfehlungen: 🎜Javascript🎜(Video)🎜Das obige ist der detaillierte Inhalt vonSo löschen Sie Array-Elemente in Javascript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!