2016-11-04 1 views
0

ich ein Array haben, mit einer geraden Anzahl von Elementen:Wie Klammern von Array zu löschen, aber halten Anführungszeichen

var peoples = [ 
     ["1", "Adam", "Jones"], 
     ["2", "Michael", "Jordan"], 
     ["3", "Frank", "Forman"], 
     ["4", "John", "Bryant"], 
     ["5", "James", "Johnson"], 
     ["6", "Vincent", "Carter"], 
     ["7", "George", "Williams"], 
     ["8", "Brandon", "Clarkson"] 
]; 

und ich versuche Feld in Paaren durch folgende Muster zu fusionieren:

["1", "Adam", "Jones", "2", "Michael", "Jordan"] 
["3", "Frank", "Forman","4", "John", "Bryant"] 

usw.

ich habe ein Problem mit folgendem Code:

for (var i = 0; i < peoples.length/2; i++) { 
     array1[i].push(array2[i].join(",")) 
    } 

, die dieses Ergebnis erzeugt:

["1","Adam","Jones","2,Michael,Jordan"] 

und es sollte sein: https://jsfiddle.net/danny3b/k5hza694/

+0

Sie verwenden 'Array.prototype.join', das' 2, Micheal, Jordan 'verbindet ... Sie brauchen es nicht. – Hitmands

Antwort

0

Ich habe es schon getan von mir

["1","Adam","Jones","2","Michael","Jordan"] 

Hier ist meine jsfiddle. Ich suchte nach concat() Methode.

for (var i = 0; i < peoples.length/2; i++) { 
     array1[i] = array1[i].concat(array2[i]) 
    } 

https://jsfiddle.net/danny3b/rfju9949/

+1

Ja, jetzt fügen Sie Array-Elemente hinzu, mit Join haben Sie eine Zeichenfolge erstellt und sie dem Array als ein Element hinzugefügt. –

0

Was verbinden tut, ist alle Saiten in der Anordnung verkettet. Stattdessen sollten Sie alle Elemente dort einfügen.

Verwandte Themen