Unterschied: Unterschied: 1. Ein Objekt ist eine ungeordnete Sammlung mit benannten Werten, während ein Array eine geordnete Sammlung mit codierten Werten ist. 2. Die Daten des Arrays haben keinen Namen, sondern nur Indizes, während die Daten des Objekts einen Namen angeben müssen.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.
Objekt (Objekt) und Array (Array) in JavaScript sehen manchmal ähnlich aus, aber es handelt sich um zwei verschiedene Arten von Datensammlungen. Objekte sind ungeordnete Sammlungen mit benannten Werten, während Arrays eine geordnete Sammlung codierter Werte enthalten.
Beispiel 1
Das folgende Beispiel verwendet Objekte und Arrays, um die beiden Werte 1 bzw. true zu speichern. Die Codestruktur ist wie folgt:
var o = { //对象 x :1, //该值命名为x y : true //该值命名为y } var a = [ //数组 1, //该值隐含编码为0 true //该值隐含编码为1 ]
Die Speicherform des Objekts ist einem Array sehr ähnlich, daher wird es als assoziatives Array bezeichnet, ist aber kein Array im eigentlichen Sinne. Assoziative Arrays verknüpfen Werte mit bestimmten Zeichenfolgen. Ein echtes Array ist nicht mit einer Zeichenfolge verknüpft, sondern mit einem Wert und einem nicht negativen Ganzzahlindex.
console.log(o["x"]); //返回1,使用点语法存取属性 console.log(a[0]); //返回1,使用中括号存取属性
Bei Verwendung der Punktsyntax für den Zugriff auf Attribute ist der Attributname ein Bezeichner; bei Verwendung von eckigen Klammern für den Zugriff auf Attribute ist der Attributname eine Zeichenfolge.
Beispiel 2
Wenn der Punktoperator für den Zugriff auf Objektattribute verwendet wird, wird der Attributname durch einen Bezeichner dargestellt; wenn eckige Klammern für den Zugriff auf Objektattribute verwendet werden, wird der Attributname durch eine Zeichenfolge dargestellt zur Laufzeit dynamisch generiert werden.
var o = { p1 : 1, p2 : true } for (var i = 1; i < 3; i ++) { console.log(o["p" + i]); }
Der Zugriff auf Objekteigenschaften mit Zeichenfolgenausdrücken über die assoziative Array-Methode ist sehr flexibel. Wenn viele Objekteigenschaften vorhanden sind, ist es schwierig, mit der Punktsyntax auf Objekteigenschaften zuzugreifen. Darüber hinaus können in einigen Sonderfällen nur assoziative Arrays für den Zugriff auf Objekteigenschaften verwendet werden.
【Verwandte Empfehlungen: Javascript-Lern-Tutorial】
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Javascript-Objekten und Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!