Array -Array
1. Einführung
Ein Array ist eine geordnete Sammlung von Werten. Jeder Wert wird als Element bezeichnet, und jedes Element hat eine Position im Array, die durch eine Zahl, die als Index bezeichnet wird, dargestellt wird. JavaScript -Arrays sind von keinem Typ: Array -Elemente können von jedem Typ sein, und verschiedene Elemente im selben Array können auch unterschiedliche Typen haben. -"Autoritative Handbuch zu JavaScript (sechste Ausgabe)"
2. Definition
Die Codekopie lautet wie folgt:
var names = new Array ("Zhang San", "Li Si", "Wang Wu");
//oder
var names = ["zhang san", "li si", "wang wu"];
3. Eigenschaften
Länge: Repräsentiert die Länge des Elements im Array.
4. Beispielmethode
Häufige Methoden:
1) Unshift (): Einlegen Sie das Element am Kopf des Arrays
2) Shift (): Entfernen und geben Sie das erste Element des Arrays zurück und geben Sie zurück
3) Push (): Element am Ende des Arrays einfügen
4) pop (): Entfernen und geben Sie das letzte Element des Arrays zurück und geben Sie zurück
4.1 concat (): Elemente mit Array verbinden. Das ursprüngliche Array wird nicht geändert und das Neue Array wird zurückgegeben.
Parameter:
①Value1, value2 ... VURLEN: eine beliebige Anzahl von Werten
Rückgabewert:
{Array} Ein neues Array, das das ursprüngliche Array und neu hinzugefügte Elemente enthält.
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = ['a', 'b', 'c'];
var DemoArray2 = DemoArray.Concat ('e');
console.log (Demoarray); // => DemoArray: ['A', 'B', 'C'] Das ursprüngliche Array ändert sich nicht
console.log (DemoArray2); // => ['a', 'b', 'c', 'e']
4.2 jeder (): durchqueren die Elemente wiederum, um festzustellen, ob jedes Element wahr ist
Parameter:
① Funktion (Wert, Index, Selbst) {}: Jedes Element verwendet diese Funktion, um festzustellen, ob es wahr ist. Wenn beurteilt wird, dass man falsch ist, wird der Traversal sofort beendet.
Wert: Das Element des Array -Traversals
Index: Elementnummer
Selbst: Array selbst
Rückgabewert:
{Boolean}: RECHT TREE NUR, wenn jedes Element wahr ist; Wenn man falsch ist, geben Sie falsch zurück.
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = [1, 2, 3];
var rs = DemoArray.Every (Funktion (Wert, Index, Selbst) {
Rückgabewert> 0;
});
console.log (rs); // => true
4.3 Filter (): Überqueren Sie die Elemente nacheinander und geben Sie ein neues Array mit Elementen zurück, die den Kriterien entsprechen.
Parameter:
① Funktion (Wert, Index, Selbst) {}: Jedes Element nennt diese Funktion wiederum und gibt ein neues Array zurück, das Elemente enthält, die den Kriterien erfüllen.
Wert: Das Element des Array -Traversals
Index: Elementnummer
Selbst: Array selbst
Rückgabewert:
{Array} Ein neues Array mit Elementen, die den Kriterien entsprechen
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = [1, 2, 3];
var rs = DemoArray.filter (Funktion (Wert, Index, Selbst) {
Rückgabewert> 0;
});
console.log (rs); // => [1, 2, 3]
4.4 foreach (): durchquerte Elemente nacheinander und führen Sie die angegebene Funktion aus; Kein Rückgabewert.
Parameter:
① Funktion (Wert, Index, Selbst) {}: Jedes Element nennt diese Funktion nacheinander
Wert: Das Element des Array -Traversals
Index: Elementnummer
Selbst: Array selbst
Rückgabewert: Keine
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = [1, 2, 3];
Demoarray.foreach (Funktion (Wert, Index, Selbst) {
console.log (Wert); // => Ausgabe in Sequenz: 1 2 3
});
4.5 INDEXOF (): Finden Sie passende Elemente in einem Array. Wenn kein passendes Element existiert, geben Sie -1 zurück. Verwenden Sie den Operator "===" bei der Suche, sodass Sie zwischen 1 und '1' unterscheiden müssen
Parameter:
①Value: Der Wert, der im Array zu finden ist.
②Start: Die Seriennummer -Position, die mit der Suche beginnt, wenn sie weggelassen wird, ist es 0.
Rückgabewert:
{Int}: Gibt den ersten übereinstimmenden Wert im Array zurück. Wenn es nicht existiert, geben Sie -1 zurück
Beispiel:
Die Codekopie lautet wie folgt:
['a', 'b', 'c']. Indexof ('a'); // => 0
['a', 'b', 'c']. Indexof ('a', 1); // =>-1
['a', 'b', 'c']. Indexof ('d'); // =>-1
[1, 2, 3] .Indexof ('1'); // => -1: Die verwendete Matching -Methode '===' Matching -Methode
4.6 join (): Spleißen Sie alle Elemente im Array durch einen Trennzeichen in eine Zeichenfolge.
Parameter:
①sparator {String}: Das Trennzeichen zwischen jedem Element. Wenn es weggelassen wird, wird es durch das englische Komma getrennt.
Rückgabewert:
{String}: Eine Zeichenfolge, die von jedem Element mit einem Sparator als Trennzeichen gespleißt wird.
Beispiel:
Die Codekopie lautet wie folgt:
['a', 'b', 'c']. Join (); // => 'a, b, c'
['a', 'b', 'c']. Join ('-'); // => 'AB-C'
4.7 LastIndexof: Umgekehrt passende Elemente in einem Array nachschlagen. Wenn kein passendes Element existiert, geben Sie -1 zurück. Verwenden Sie den Operator "===" bei der Suche, sodass Sie zwischen 1 und '1' unterscheiden müssen
Parameter:
①Value: Der Wert, der im Array zu finden ist.
②Start: Die Position der Sequenznummer, die mit der Suche beginnt. Wenn Sie weggelassen werden, suchen Sie vom letzten Element aus.
Rückgabewert:
{Int}: Finden Sie den ersten übereinstimmenden Wert im Array von rechts nach links. Wenn es nicht existiert, geben Sie -1 zurück
Beispiel:
Die Codekopie lautet wie folgt:
['a', 'b', 'c']. lastIndexof ('a'); // => 0
['a', 'b', 'c']. lastIndexof ('a', 1); // => 0
['a', 'b', 'c']. lastIndexof ('d'); // => -1
[1, 2, 3] .lastindexof ('1'); // => -1: Die verwendete Matching -Methode '===' Matching -Methode
4.8 MAP (): Iterer
Parameter:
① Funktion (Wert, Index, Selbst) {}: Jedes Element ruft diese Funktion wiederum auf, um das berechnete Element zurückzugeben
Wert: Das Element des Array -Traversals
Index: Elementnummer
Selbst: Array selbst
Rückgabewert:
{Array} Ein neues Array mit sogar guten Elementen
Beispiel:
Die Codekopie lautet wie folgt:
[1, 2, 3] .Map (Funktion (Wert, Index, Selbst) {
Rückgabewert * 2;
}); // => [2, 4, 6]
4.9 Pop (): Entfernen und geben Sie das letzte Element des Arrays zurück und geben Sie zurück
Parameter: Keine
Rückgabewert:
{Objekt} Das letzte Element des Arrays; Wenn das Array leer ist, kehren Sie undefiniert zurück
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = ['a', 'b', 'c'];
Demoarray.pop (); // => c
Demoarray.pop (); // => b
Demoarray.pop (); // => a
Demoarray.pop (); // => undefiniert
4.10 Push (): Fügen Sie Elemente zum Ende des Arrays hinzu
Parameter:
①Value1, value2 ... VULENEN: Fügen Sie eine beliebige Anzahl von Werten zum Ende des Arrays hinzu
Rückgabewert:
{int} Die neue Länge des Arrays
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = ['a', 'b', 'c'];
Demoarray.push ('D'); // => 4, DemoArray: ['A', 'B', 'C', 'D']
Demoarray.push ('e', 'f'); // => 6, DemoArray: ['A', 'B', 'C', 'D', 'E', 'F']
console.log (Demoarray); // => ['a', 'b', 'c', 'd', 'e', 'f']
4.11 Reverse (): Die Reihenfolge der Array -Elemente invertiert.
Parameter: Keine
Rückgabewert: Keine (Invertelement -Reihenfolge im Originalarray).
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = ['a', 'b', 'c', 'd', 'e'];
Demoarray.Reverse ();
console.log (Demoarray); // => ["E", "D", "C", "B", "A"]
4.12 Shift (): Entfernen und geben Sie das erste Element des Arrays zurück und geben Sie zurück
Parameter: Keine
Rückgabewert:
{Objekt} Das erste Element des Arrays; Wenn das Array leer ist, wird undefiniert zurückgegeben.
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = ['a', 'b', 'c'];
Demoarray.Shift (); // => a
Demoarray.Shift (); // => b
Demoarray.Shift (); // => c
Demoarray.Shift (); // => undefiniert
4.13 Slice (StartIndex, EndIndex): Gibt einen Teil des Arrays zurück.
Parameter:
① StartIndex: Die Sequenznummer am Anfang; Wenn es sich um eine negative Zahl handelt, bedeutet dies, dass die Berechnung vom Ende beginnt, -1 das letzte Element darstellt, -2 ist der zweite bis zuletzt und so weiter.
②endindex: Die letzte Sequenznummer des Elements am Ende, wenn nicht angegeben, ist das Ende das Ende. Das abgefangene Element enthält das Element hier nicht mit der Sequenznummer, und das Ende ist das vorherige Element mit der Sequenznummer hier.
Rückgabewert:
{Array} Ein neues Array, das alle Elemente von startindex bis zum vorherigen Element des EndIndex enthält.
Beispiel:
Die Codekopie lautet wie folgt:
[1, 2, 3, 4, 5, 6] .Slice (); // => [1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5, 6] .Slice (1); // => [2, 3, 4, 5, 6]: Ausgehend von der Seriennummer 1
[1, 2, 3, 4, 5, 6] .Slice (0, 4); // => [1, 2, 3, 4]: Abfangen das Element der Seriennummer 0 in Seriennummer 3 (die vorherige Seriennummer 4)
[1, 2, 3, 4, 5, 6] .Slice (-2); // => [5, 6]: Abfangen die nächsten 2 Elemente abfangen
4.14 sortieren (opt_orderfunc): Sortieren nach bestimmten Regeln
Parameter:
① opt_orderfunc (v1, v2) {Funktion}: Optionale Sortierregelfunktion. Wenn es weggelassen wird, werden die Buchstaben des Elements von klein nach groß sortiert.
V1: Das vorherige Element wird durchquert.
V2: Die folgenden Elemente werden durchquert.
Sortierregeln:
Vergleichen Sie V1 und V2 und geben Sie eine Nummer zurück, um die Sortierregeln von V1 und V2 darzustellen:
Weniger als 0: V1 ist kleiner als V2, V1 ist vor V2 voraus.
Gleich 0: v1 gleich v2, v1 ist vor V2 voraus.
Größer als 0: V1 ist größer als V2, V1 ist hinter V2.
Rückgabewert: Keine (Sortieren von Operationen im ursprünglichen Array).
Beispiel:
Die Codekopie lautet wie folgt:
[1, 3, 5, 2, 4, 11, 22] .Sort (); // => [1, 11, 2, 22, 3, 4, 5]: Alle Elemente werden in Zeichen konvertiert, und die Zeichen von 11 sind vor 2
[1, 3, 5, 2, 4, 11, 22] .Sort (Funktion (v1, v2) {
return v1 - v2;
}); // => [1, 2, 3, 4, 5, 11, 22]: Sortiert von klein nach groß
[1, 3, 5, 2, 4, 11, 22] .Sort (Funktion (v1, v2) {
return - (v1 - v2); // Inverse können Sie von groß nach klein konvertieren
}); // => [22, 11, 5, 4, 3, 2, 1]
4.15 splice (): Setzen und Löschen von Array -Elementen einsetzen und löschen
Parameter:
① Start {int}: Die Startsequenznummer zum Einfügen, Löschen oder Ersetzen.
②DeletCount {int}: Die Anzahl der zu löschenden Elemente, starten Sie die Berechnung von Start.
③Value1, value2 ... Valuen {Object}: Optionaler Parameter, der das zu fügige Element angibt, und es beginnt von Start einzulegen. Wenn der Parameter ② nicht 0 ist, führen Sie zuerst die Löschvorrichtung durch und führen Sie dann den Einfügenvorgang durch.
Rückgabewert:
{Array} Gibt ein neues Array zurück, das gelöschte Elemente enthält. Wenn der Parameter ② 0 ist, bedeutet dies, dass kein Element gelöscht und ein leeres Array zurückgegeben wird.
Beispiel:
Die Codekopie lautet wie folgt:
// 1. löschen
var Demoarray = ['a', 'b', 'c', 'd', 'e'];
var DemoArray2 = DemoArray.SPLICE (0, 2); // 2 Elemente löschen ab 0 aus der Sequenznummer und geben Sie ein Array zurück, das die gelöschten Elemente enthält: ['A', 'B']
console.log (DemoArray2); // => ['a', 'b']
console.log (Demoarray); // => ['c', 'd', 'e']
// 2. einfügen
var Demoarray = ['a', 'b', 'c', 'd', 'e'];
var DemoArray2 = DemoArray.SPLICE (0, 0, '1', '2', '3'); // ② Der Parameter ist 0, gibt ein leeres Array zurück
console.log (DemoArray2); // => []
console.log (Demoarray); // => ['1', '2', '3', 'A', 'B', 'C', 'D', 'E']
// 3.. Zuerst löschen und dann einfügen
var Demoarray = ['a', 'b', 'c', 'd', 'e'];
// Wenn der Parameter ② nicht 0 ist, führen Sie zuerst den Löschvorgang aus (löschen Sie 4 Elemente mit Sequenznummer ab 0, geben Sie ein Array zurück, das die gelöschten Elemente enthält) und führen Sie dann den Einfügungsvorgang durch
var DemoArray2 = DemoArray.SPLICE (0, 4, '1', '2', '3');
console.log (DemoArray2); // => ['a', 'b', 'c', 'd']
console.log (Demoarray); // => ['1', '2', '3', 'A', 'B', 'C', 'D', 'E']
4.16 toString (): Alle Elemente im Array in eine Zeichenfolge durch ein englisches Komma nähen.
Parameter: Keine
Rückgabewert:
{String} Alle Elemente im Array werden von einem englischen Komma in eine Schnur gespleißt und kehrten zurück. Gleiches gilt für die Aufruf der join () -Methode ohne Parameter.
Beispiel:
Die Codekopie lautet wie folgt:
[1, 2, 3, 4, 5] .ToString (); // => '1,2,3,4,5'
['a', 'b', 'c', 'd', 'e']. tostring (); // => 'a, b, c, d, e'
4.17 Unshift (): Einfügen Element am Kopf des Arrays ein
Parameter:
①Value1, value2 ... VULENEN: Fügen Sie dem Kopfzeilen des Arrays eine beliebige Anzahl von Werten hinzu
Rückgabewert:
{int} Die neue Länge des Arrays
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = [];
Demoarray.unshift ('a'); // => DemoArray: ['a']
Demoarray.unshift ('B'); // => DemoArray: ['B', 'A']
Demoarray.unshift ('C'); // => DemoArray: ['C', 'B', 'A']
Demoarray.unshift ('D'); // => DemoArray: ['D', 'C', 'B', 'A']
Demoarray.unshift ('e'); // => DemoArray: ['E', 'D', 'C', 'B', 'A']
5. Statische Methode
5.1 Array.IsArray (): Bestimmt, ob das Objekt ein Array ist
Parameter:
①Value {Objekt}: Jedes Objekt
Rückgabewert:
{Boolean} Gibt das Urteilsergebnis zurück. Wenn es wahr ist, bedeutet dies, dass das Objekt ein Array ist; Wenn dies falsch ist, bedeutet dies, dass das Objekt kein Array ist
Beispiel:
Die Codekopie lautet wie folgt:
Array.isArray ([]); // => true
Array.isArray (['a', 'b', 'c']); // => true
Array.isArray ('a'); // => false
Array.isArray ('[1, 2, 3]'); // => false
6. Praktischer Betrieb
6.1 Index
Beschreibung: Jedes Element hat eine Position im Array, die durch eine Nummer, die als Index bezeichnet wird, dargestellt wird. Der Index startet ab 0, dh der Index des ersten Elements ist 0, der Index des zweiten Elements ist 1 und so weiter;
Wenn ein Index erhalten wird, der in einem Array nicht existiert, wird undefined zurückgegeben.
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = ['a', 'b', 'c', 'd', 'e'];
Demoarray [0]; // => das erste Element erhalten: 'a' '
Demoarray [0] = 1; // Setzen Sie das erste Element auf 1
console.log (Demoarray); // => DemoArray: [1, 'B', 'C', 'D', 'E']
console.log (Demoarray [9]); // => undefiniert: Rückgabe undefiniert, wenn der erhaltene Index nicht vorhanden ist
6.2 für Aussagen
HINWEIS: Sie können das Array eins nach dem anderen durch die for -Anweisung durchqueren
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarray = ['a', 'b', 'c', 'd', 'e'];
für (var i = 0, Länge = DemoArray.length; i <Länge; i ++) {
console.log (Demoarray [i]); // => Ausgabeelemente im Array eins nacheinander
}
6.3 flache Kopie
Hinweis: Der Array -Typ ist ein Referenztyp. Wenn Array A in das Array B kopiert wird, wird die Elementmodifikation an Array B vorgenommen, und das Array A wird ebenfalls geändert.
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarraya = ['a', 'b', 'c', 'd', 'e'];
var Demoarrayb = Demoarraya; // Array A Array B zuweisen
DemoArrayb [0] = 1; // Die Elemente von Array B ändern
console.log (Demoarraya); // => [1, 'B', 'C', 'D', 'E']: Die Elemente von Array A haben sich ebenfalls geändert
6.4 Tiefkopie
HINWEIS: Verwenden Sie die concat () -Methode, um ein neues Array zurückzugeben. Verhindern Sie flaches Kopieren, führen Sie Elementmodifikationsvorgänge in Array B durch und ändert sich nicht.
Beispiel:
Die Codekopie lautet wie folgt:
var Demoarraya = ['a', 'b', 'c', 'd', 'e'];
var DemoArrayb = DemoArraya.Concat (); // Verwenden Sie die concat () -Methode, um ein neues Array zurückzugeben
DemoArrayb [0] = 1; // Die Elemente von Array B ändern
console.log (Demoarraya); // => ['a', 'b', 'c', 'd', 'e']: Die Elemente von Array A haben sich nicht geändert
console.log (DemoArrayb); // => [1, 'B', 'C', 'D', 'E']: Das Element von Array B hat sich geändert