Hannes Weninger: JavaScript 2 dim- Array

Hallo,

ich habe gerade Probleme mit Javascript 2 dim- arrays. Ich habe folgenden Code:

	                var containedObject1Array = [[]];
			var containedObject1 = {
				start: "22.08.2015 09:27",
				end: "22.08.2015 13:54",
				dayOfWeek: 1,
				containerType: "SERVICE"
				};
			var containedObject2 = {
				start: "22.08.2015 14:51",
				end: "22.08.2015 17:04",
				dayOfWeek: 2,
				containerType: "SERVICE"
				};
			containedObject1Array[containedObject1.dayOfWeek].push(containedObject1);
			containedObject1Array[containedObject2.dayOfWeek].push(containedObject2);

Ich wollte folgendes haben: [1] -> containedObject1 [2] -> containedObject2

Wie kann ich das erreichen, momentan bekomm ich containedObject1Array[1] is undefined. Muss ich dass array da auffüllen?

Danke! Hannes

  1. Tach!

    Ich habe folgenden Code:

    	                var containedObject1Array = [[]];
    			var containedObject1 = {
    				start: "22.08.2015 09:27",
    				end: "22.08.2015 13:54",
    				dayOfWeek: 1,
    				containerType: "SERVICE"
    				};
    			var containedObject2 = {
    				start: "22.08.2015 14:51",
    				end: "22.08.2015 17:04",
    				dayOfWeek: 2,
    				containerType: "SERVICE"
    				};
    			containedObject1Array[containedObject1.dayOfWeek].push(containedObject1);
    			containedObject1Array[containedObject2.dayOfWeek].push(containedObject2);
    

    Ich wollte folgendes haben: [1] -> containedObject1 [2] -> containedObject2

    Deine erste Zeile erzeugt ein Array, dessen erstes Element (an Position 0) ein leeres Array ist.

    Mit dem ersten push() greifst du aber auf das zweite Element (an Position 1) zu. Das existiert nicht.

    ich habe gerade Probleme mit Javascript 2 dim- arrays.

    Das sieht mir aber gar nicht nach einem zweidimensionalem Array aus, sondern nach einem einfachen Array, dessen Elemente Objekte sind.

    Wie kann ich das erreichen, momentan bekomm ich containedObject1Array[1] is undefined. Muss ich dass array da auffüllen?

    var containedObject1Array = [[]];
    containedObject1Array.push(containedObject1);
    

    dann hast du dasselbe wie

    containedObject1Array[0] = [];
    containedObject1Array[1] = containedObject1;
    

    dedlfix.