1. Arrays verstehen
Ein Array ist eine Sammlung bestimmter Datentypen. Der Datentyp kann eine Ganzzahl, eine Zeichenfolge oder sogar ein Objekt sein.
Javascript unterstützt keine mehrdimensionalen Arrays. Da Arrays jedoch Objekte enthalten können (ein Array ist auch ein Objekt), können Arrays durch gegenseitige Verschachtelung ähnliche Funktionen wie mehrdimensionale Arrays erreichen.
1.1 Array definieren
Deklarieren Sie ein Array mit 10 Elementen
var a = neues Array(10);
Zu diesem Zeitpunkt wurde der Speicherplatz für a geöffnet, der 10 Elemente enthält, um ihn aufzurufen, z. B. a[2]. Das Element wurde jedoch zu diesem Zeitpunkt noch nicht initialisiert Der Anruf wird undefiniert zurückgegeben.
Der folgende Code definiert ein Variablenarray und weist Werte zu
var a = new Array();
a[0] = 10;
a[1] = "aaa";
a[2] = 12,6;
Wie oben erwähnt, können Objekte wie im folgenden Code in Arrays platziert werden
var a = new Array();
a[0] = wahr;
a[1] = document.getElementById("text");
a[2] = {x:11, y:22};
a[3] = neues Array();
Arrays können beispielsweise direkt bei der Instanziierung Werte zugewiesen werden
var a = neues Array(1, 2, 3, 4, 5);
var b = [1, 2, 3, 4, 5];
Sowohl a als auch b sind Arrays, aber b verwendet eine implizite Deklaration, um eine weitere Instanz zu erstellen. Wenn zu diesem Zeitpunkt alarm(a==b) verwendet wird, wird false angezeigt.
1.2 Mehrdimensionales Array
Tatsächlich unterstützt Javascript keine mehrdimensionalen Arrays. In ASP können Sie dim a(10,3) verwenden, um mehrdimensionale Arrays zu definieren. In Javascript verwenden Sie var a = new Array(10,3), an Es wird jedoch ein Fehler gemeldet, wie bereits erwähnt. Arrays können Objekte enthalten, sodass beispielsweise ein Element im Array als Array deklariert werden kann
var a = new Array();
a[0] = neues Array();
a[0][0] = 1;
Alert(a[0][0]); //Popup 1
Weisen Sie bei der Deklaration einen Wert zu
var a = new Array([1,2,3], [4,5,6], [7,8,9]);
var b = [[1,2,3], [4,5,6], [7,8,9]];
Der Effekt ist derselbe: a verwendet eine reguläre Instanziierung, b ist eine implizite Deklaration und das Ergebnis ist ein mehrdimensionales Array.
1.3 Array-Literale
Ich weiß wirklich nicht, wie das auf Chinesisch heißt, Textarray?
Apropos Arrays: Arrays sind eigentlich spezielle Objekte. Werte und Aufrufe werden über Objektname.property und object.method() abgerufen, während Arrays über Indizes abgerufen werden Werte und Array-Literale sind Arrays sehr ähnlich. Allerdings handelt es sich bei Array-Literalen grundsätzlich um Objekte, deren Deklaration und Aufruf sich von Arrays unterscheiden.
var aa = neues Objekt();
aa.x = "Katze";
aa.y = "sonnig";
Alert(aa.x); //Popup-Katze
Erstellen Sie ein einfaches Objekt, wenn es als Array-Literal verwendet wird.
var a = {x:"cat", y:"sunny"};
Alert(a["y"]); //pop up sunny
Hier ist eine andere Möglichkeit, ein Objekt zu erstellen. Das Ergebnis ist das gleiche