JavaScript/Objekte/Array/splice: Unterschied zwischen den Versionen

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche
(Beschreibung)
K (markup, typo, Straffung, ausführlicher Beispieltext)
Zeile 1: Zeile 1:
Entfernt Elemente aus einem [[JavaScript/Objekte/Array|Array]] und fügt neue Elemente ein.
+
Die Methode '''splice''' entfernt Elemente aus einem [[JavaScript/Objekte/Array|Array]] und fügt neue Elemente ein.
  
== splice() ==
 
 
{{Iconset|meta|js1.2|ie5.5|fx1|op5.12|konq3.1|saf1}}
 
{{Iconset|meta|js1.2|ie5.5|fx1|op5.12|konq3.1|saf1}}
  
=== Syntax ===
+
== Syntax ==
 
<code>splice(''position [, anzahl [, element0, element1, ..., elementN] ]'')</code>
 
<code>splice(''position [, anzahl [, element0, element1, ..., elementN] ]'')</code>
  
=== Parameter ===
+
== Parameter ==
  
==== position ====
+
;position
Die Position im Array, an der Elemente gelöscht und eingefügt werden sollen. Ist dieser Wert negativ, dann wird vom Ende des Arrays aus gezählt.
+
:die Position im Array, an der Elemente gelöscht und eingefügt werden sollen
 +
:Ist dieser Wert negativ, dann wird vom Ende des Arrays aus gezählt.
  
==== anzahl ====
+
;anzahl
Die Anzahl der zu löschenden Elemente.
+
:die Anzahl der zu löschenden Elemente
  
==== element0, ..., elementN ====
+
;element0, ..., elementN
Die neuen Elemente, die an der Position eingefügt werden sollen.
+
:die neuen Elemente, die an der Position eingefügt werden sollen
  
=== Rückgabe ===
+
== Rückgabe ==
 
Ein Array mit den entfernen Elementen.
 
Ein Array mit den entfernen Elementen.
  
=== Beschreibung ===
+
== Beschreibung ==
Um neue Elemente einzufügen ist es erforderlich die Anzahl der zu löschenden Elemente anzugeben. Sollen keine Elemente gelöscht werden, dann sollte hier 0 (Null) stehen. Wenn die Methode nur mit dem ersten Parameter <code>position</code> aufgerufen wird, dann werden alle Elemente ab dieser Position gelöscht, das Element an dieser Position mit einbegriffen.
+
Um neue Elemente einzufügen, ist es erforderlich, die Anzahl der zu löschenden Elemente anzugeben. Sollen keine Elemente gelöscht werden, dann sollte hier 0 (Null) stehen. Wenn die Methode nur mit dem ersten Parameter <code>position</code> aufgerufen wird, dann werden alle Elemente ab dieser Position gelöscht, das Element an dieser Position mit einbegriffen.
  
{{Beispiel|
+
{{Beispiel|{{BeispielCode|<source lang="javascript">
{{BeispielCode|<source lang="javascript">
 
 
var a = new Array("a", "b", "c", "d", "e", "f");
 
var a = new Array("a", "b", "c", "d", "e", "f");
 
alert(a); // "a,b,c,d,e,f"
 
alert(a); // "a,b,c,d,e,f"
  
a.splice(2, 0, "C", "D");
+
/* --- 1 --- */
alert(a); // "a,b,C,D,c,d,e,f"
+
a.splice(2, 0, "X", "Y");
 +
alert(a); // "a,b,X,Y,c,d,e,f"
  
a.splice(4, 3, "E");
+
/* -- 2 --- */
alert(a); // "a,b,C,D,E,f"
+
a.splice(4, 3, "Z");
 +
alert(a); // "a,b,X,Y,Z,f"
  
 +
/* --- 3 --- */
 +
a.splice(-1, 5, "#");
 +
alert(a); // "a,b,X,Y,Z,#"
 +
 +
/* --- 4 --- */
 +
a.splice(-1);
 +
alert(a); // "a,b,X,Y,Z"
 +
 +
/* --- 5 --- */
 
a.splice(1);
 
a.splice(1);
 
alert(a); // "a"
 
alert(a); // "a"
 
</source>
 
</source>
 
}}
 
}}
{{BeispielText|
+
{{BeispielText|;--- 1 ---
Das Beispiel zeigt die allgemeine Verwendung der <code>splice()</code>-Methode.
+
:an die Stelle 2 (Zählung beginnt bei Null!) werden die Elemente "X" und "Y" eingefügt
}}
+
;--- 2 ---
 +
:beginnend ab der Stelle 4 werden 3 Elemente ("c", "d", "e") gelöscht und das Element "Z" eingefügt
 +
;--- 3 ---
 +
:beginnend ab der letzen Stelle sollen 5 Elemente gelöscht werden, davon gibt es jedoch nur eins ("f")
 +
:das Element "#" wird an die letzte Stelle gesetzt
 +
;--- 4 ---
 +
:ab der letzten Stelle werden alle Elemente gelöscht ("#")
 +
;--- 5 ---
 +
:beginnend ab der Stelle 1 (Zählung beginnt bei Null!) werden alle Elemente gelöscht}}
 
}}
 
}}
 
+
Der Parameter <code>position</code> bezieht sich auf einen auf 0 (Null) basierenden Index vom Array. Das bedeutet, das erste Element im Array hat die Position 0 (Null). Wird der Index im Array durch eine negative Positionsangabe ermittelt, dann entspricht die Position -1 dem letzten Eintrag im Array und die Position -2 dem vorletzten Eintrag. Es wird einfach vom Ende aus gezählt.
Der Parameter <code>position</code> bezieht sich auf einen auf 0 (Null) basierenden Index vom Array. Das bedeutet, das erste Element im Array hat die Position 0 (Null). Wird der Index im Array durch eine negative Positionsangabe ermittellt, dann entspricht die Position -1 dem letzten Eintrag im Array und die Position -2 dem vorletzten Eintrag. Es wird einfach vom Ende aus gezählt.
 
  
 
{{Beachten|
 
{{Beachten|

Version vom 10. Juni 2012, 10:00 Uhr

Die Methode splice entfernt Elemente aus einem Array und fügt neue Elemente ein.

Vorlage:Iconset

Syntax

splice(position [, anzahl [, element0, element1, ..., elementN] ])

Parameter

position
die Position im Array, an der Elemente gelöscht und eingefügt werden sollen
Ist dieser Wert negativ, dann wird vom Ende des Arrays aus gezählt.
anzahl
die Anzahl der zu löschenden Elemente
element0, ..., elementN
die neuen Elemente, die an der Position eingefügt werden sollen

Rückgabe

Ein Array mit den entfernen Elementen.

Beschreibung

Um neue Elemente einzufügen, ist es erforderlich, die Anzahl der zu löschenden Elemente anzugeben. Sollen keine Elemente gelöscht werden, dann sollte hier 0 (Null) stehen. Wenn die Methode nur mit dem ersten Parameter position aufgerufen wird, dann werden alle Elemente ab dieser Position gelöscht, das Element an dieser Position mit einbegriffen.

Beispiel
var a = new Array("a", "b", "c", "d", "e", "f");
alert(a); // "a,b,c,d,e,f"

/* --- 1 --- */
a.splice(2, 0, "X", "Y");
alert(a); // "a,b,X,Y,c,d,e,f"

/* -- 2 --- */
a.splice(4, 3, "Z");
alert(a); // "a,b,X,Y,Z,f"

/* --- 3 --- */
a.splice(-1, 5, "#");
alert(a); // "a,b,X,Y,Z,#"

/* --- 4 --- */
a.splice(-1);
alert(a); // "a,b,X,Y,Z"

/* --- 5 --- */
a.splice(1);
alert(a); // "a"
--- 1 ---
an die Stelle 2 (Zählung beginnt bei Null!) werden die Elemente "X" und "Y" eingefügt
--- 2 ---
beginnend ab der Stelle 4 werden 3 Elemente ("c", "d", "e") gelöscht und das Element "Z" eingefügt
--- 3 ---
beginnend ab der letzen Stelle sollen 5 Elemente gelöscht werden, davon gibt es jedoch nur eins ("f")
das Element "#" wird an die letzte Stelle gesetzt
--- 4 ---
ab der letzten Stelle werden alle Elemente gelöscht ("#")
--- 5 ---
beginnend ab der Stelle 1 (Zählung beginnt bei Null!) werden alle Elemente gelöscht

Der Parameter position bezieht sich auf einen auf 0 (Null) basierenden Index vom Array. Das bedeutet, das erste Element im Array hat die Position 0 (Null). Wird der Index im Array durch eine negative Positionsangabe ermittelt, dann entspricht die Position -1 dem letzten Eintrag im Array und die Position -2 dem vorletzten Eintrag. Es wird einfach vom Ende aus gezählt.

Beachten Sie: Ein negativer Wert für position bedeutet nicht, dass die Elemente dann auch vor der Position eingefügt oder gelöscht werden. Ein negativer Positionswert ist nur für die Bestimmung des Index von Bedeutung und hat sonst keinerlei Auswirkungen.