Heim >Web-Frontend >js-Tutorial >Was sind Initialisierungsausdrücke für Javascript-Objekte und -Arrays?
Objekt- und Array-Initialisierung sind eigentlich neu erstellte Objekte und Arrays. Diese Initialisierungsausdrücke werden manchmal als „Objektliterale“ und „Array-Literale“ bezeichnet. Im Gegensatz zu booleschen Literalen handelt es sich jedoch nicht um primitive Ausdrücke, da die darin enthaltenen Mitglieder oder Elemente Unterausdrücke sind.
Die Syntax des Initialisierungsausdrucks des Arrays ist sehr einfach.
Der Initialisierungsausdruck des Arrays besteht aus einem Paar eckiger Klammern und einer durch getrennten Liste Kommas. Das Initialisierungsergebnis ist ein neu erstelltes Array. Die Elemente des Arrays sind die Werte eines durch Kommas getrennten Ausdrucks.
[] //Ein leeres Array; leer in [] bedeutet, dass das Array keine Elemente hat
[1+2,3+4] //Ein Array mit zwei Elementen, dem ersten eins 3. Der zweite ist 7
Der Elementinitialisierungsausdruck im Array-Initialisierungsausdruck kann ein Array-Initialisierungsausdruck sein. Mit anderen Worten, Ausdrücke können verschachtelt werden
var mat = [[1,2,3],[4,5,6],[7,8,9]];
Die Elemente zwischen den Listen im Array-Literal können weggelassen werden und die Lücken werden mit undefiniert gefüllt Zum Beispiel wie folgt:
var a=[1,,,,5]
wobei 4 Elemente undefiniert sind. Wenn Sie am Ende des Array-Literals ein Komma belassen, wird kein neues Element mit dem Wert undefiniert erstellt.
Objektinitialisierungsausdrücke sind den Array-Initialisierungsausdrücken sehr ähnlich, außer dass die eckigen Klammern durch geschweifte Klammern ersetzt werden. Und jeder Unterausdruck enthält einen Eigenschaftsnamen und ein Nicht-Doppelpunkt als Präfix.
var p = {x: 2.1,y: -3} //一个拥有两个属性成员的对象 var q = {}; //空对象 q.x=2.1;q.y=-3; //q的属性成员和p的一样
Objektliterale können beispielsweise auch verschachtelt werden:
var anh = {left:{x:2,y:3}, right:{x:4,y:5}}
Wenn JavaScript den Wert eines Objektinitialisierungsausdrucks berechnet, werden die Objektausdrücke jeweils einmal berechnet müssen keine konstanten Werte enthalten: Es können beliebige JavaScript-Ausdrücke sein. Ebenso können die Namen von Eigenschaften in Objektliteralen Zeichenfolgen und keine Bezeichner sein. (Sehr nützlich, wenn in dieser Zeile nur reservierte Wörter oder einige unzulässige Bezeichner als Attributnamen verwendet werden können)
var side = 1; var square = {"left":{x:p.x,y:p.y}, 'right':{x:p.x+side,y:p.y+side}}
Das obige ist der detaillierte Inhalt vonWas sind Initialisierungsausdrücke für Javascript-Objekte und -Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!