Ich versuche, ein Array (mehrere Male) in ein anderes Array zu schieben. Statt eines Arrays von Arrays erhalte ich alle Werte der Mehrfach-Push-Versuche als ein einzelnes Array. Ich habe versucht, ein Array implizit zu schieben (d. H. push([val1,val2]
), explizit ein neues Array zu erstellen und dann das neue Array zu schieben. Hier ist der Schlüssel Teil des Codes:Javascript drängen Array zu Array, sondern verketten statt
var coordinates=[];
...
for(i=0;i<6;i++)
{
...
for(var j=start;j<circum[i].length;j++)
{
var segmentCoords=[];
...
if(segmentFlag===false)
{
segmentCoords.push([i+1,segmentLength]);
segmentFlag=true;
}
...
if(segmentFlag===true)
{
var tempArray=new Array(i+1,segmentLength);
segmentCoords.push(tempArray);
segmentLength+=sectorLength;
coordinates.push(segmentCoords);
segmentFlag===false;
}
...
}
Aus den vielen Stackoverflow Fragen/Antworten, die ich angeschaut habe, erwarte ich meine Koordinaten Array so etwas wie folgt aussehen: [[val1, val2],[val3,val4],[val5,val6]]
. Stattdessen ist es [val1,val2,val3,val4,val5,val6]
. Das würde ich erwarten, wenn ich .concat()
oder .apply()
verwenden würde.
Kann mir jemand erklären, warum mein Code kein Array von Arrays generiert?
Ich habe den vollständigen Code hier https://jsfiddle.net/Seytom/7xm9s4qr/, falls Sie mehr davon sehen wollen.
'var superSetArray = []; superSetArray.push ([1,2]); superSetArray.push ([3,4]); superSetArray.push ([5,6]); console.log (superSetArray); '- Dieser Code funktioniert genau so, wie Sie es erwarten. – Developer