2016-10-16 2 views
1

Ich weiß, dass es viele ähnliche Fragen zu diesem gibt, und ich habe einige durchgesehen, aber habe es nicht geschafft, meine Antwort zu finden.Javascript - Undefiniertes Objekt in einem Objekt

Ich habe ein benutzerdefiniertes Objekt erstellt destination genannt:

function destination() { 
    var city = ""; 
    var flightNumber = ""; 
    var type = ""; 
} 

I habe dann ein zweites individuelles Objekt erzeugt, und eine der Eigenschaften dieses Objekts ist vom Typ destination:

function plane() { 
    var flightNumber = ""; 
    var otherCity = new destination(); 
    var status = ""; 
    var taxiRoute = []; 
    var airRoute = ""; 
    var heading = 0; 
    var speed = 0; 
    var left = 0; 
    var top = 0; 
    var height = 0; 
    var width = 0; 
    var dx = 0; 
    var dy = 0; 
} 

Jedoch , wenn ich versuche, auf eine der Eigenschaften des Typs destination mit etwas wie:

aPlanes[0].otherCity.city; 
zuzugreifen

wo aPlanes ein Array von plane() Objekten ist, erhalte ich die undefinierte Fehlermeldung im Browser-Konsole:

Uncaught TypeError: Cannot read property 'city' of undefined

Ist jemand in der Lage, darauf hinzuweisen, wohin ich gehe falsch? Es treibt mich in den Wahnsinn!

Vielen Dank im Voraus.

Antwort

3

Sie haben eine falsche class definition. Sie benötigen this und keine lokalen Variablen mit var-Deklaration.

BTW, ich schlage vor, den Standard für Klassendeklarationen mit Großbuchstaben ersten Buchstaben zu verwenden.

+0

Vielen Dank, so eine einfache Antwort. –

Verwandte Themen