Abgesehen von den wenigen primitiven Typen (Zahlen, Strings, Booleans, null und undefiniert) ist in JavaScript alles ein Objekt (auch Funktionen).
Objekte sind im Grunde Container mit Eigenschaften, die sich sehr gut zum Sammeln und Organisieren von Daten eignen.
Eine beliebte Methode zur Erstellung von Objekten ist die Verwendung der Objektliteralnotation wobei der Eigenschaftsname vom Wert durch einen Doppelpunkt getrennt ist :
Symbol:
var myFirstObject = {
'name': 'Bobby',
'surname': 'Smith'
};
Die Anführungszeichen um Eigenschaftsnamen sind optional, wenn der Name ein legaler JavaScript-Bezeichner und kein reserviertes Wort ist. Der Name einer Eigenschaft kann eine beliebige Zeichenkette sein. Objekte können andere Objekte enthalten, so dass sie leicht Bäume oder Diagramme darstellen können:
var myFlight = {
'airline': 'Airline Name',
'number': 'AN700',
'departure': {
'IATA': 'SYD',
'time': '2010-09-04 23:10:00'
},
'arrival': {
'IATA': 'LAX',
'time': '2010-09-05 05:14:00'
}
};
JavaScript-Objekte sind auch eine praktische Hash-Tabelle Datenstruktur. Sie könnten einfach folgendes tun:
var myHashTable = {};
myHashTable['name'] = 'Bobby';
myHashTable['surname'] = 'Smith';
// subscript notation:
alert(myHashTable['name'] + ' ' + myHashTable['surname']);
// dot notation: (equivalent)
alert(myHashTable.name + ' ' + myHashTable.surname);
jQuery und viele andere JavaScript-Bibliotheken erwarten oft ein Objekt als Argument für eine Methode. Um Ihnen ein Beispiel aus einer anderen Bibliothek zu geben: So wird eine Karte mit der Methode Google Maps API v3 :
var map = new google.maps.Map(document.getElementById('map'), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: new google.maps.LatLng(39.904667, 116.408198),
zoom: 12
});
Beachten Sie, dass wir aufgrund der Funktionsweise von JavaScript problemlos lesbare komplexe Strukturen als Funktionsargumente übergeben können.