2016-05-19 8 views
1

ich solche json Abfrageergebnis haben, die ich brauche in ein Diagramm umwandelnEinfache namenlos Json-Array abgebildet JS oder PHP-Array konvertieren

[ 

    [1461931160000,583], 
    [1461932077000,732.16668701172], 
    [1461932587000,513.16668701‌​172], 
    [1461933430000,675.66668701172], 
    [1461934599000,462.66665649414], 
    [14619357000‌​00,521.5] 

] 

Die ersten Werte ein Array werden sollte und die zweiten Werte eine andere Anordnung. Ich habe versucht, die jquery map() und Array.protoype.map(), aber ich kann es nicht herausfinden. Jede PHP- oder JS-Methode wird sehr geschätzt.

+0

Das ist nicht bei allen – Peon

+0

wie ein JSON-String sieht, das nicht JSON ist, sieht eher wie ein 'console.log' ausgegeben. Nun, eigentlich sieht es eher wie ein Screenshot aus, was für jeden, der versucht, OP zu helfen, ziemlich unbequem ist. – CollinD

+0

Es ist ein Objekt mit Arrays darin: [[1461931160000,583], [1461932077000,732.16668701172], [1461932587000,513.16668701172], [1461933430000,675,66668701172], [1461934599000,462,66665649414], [1461935700000,521,5]]] – Nirs

Antwort

1

Sie haben ein zweidimensionales Array. Um es in Spalten aufgeteilt, können Sie einfach das Array iterieren und drücken Sie die Werte in neue Arrays

var data = [[1,2],[1,2]]; 
var firstValues=[]; 
var secondValues=[]; 
for(var i=0; i < data.length; i++){ 
    firstValues.push(data[i][0]); 
    secondValues.push(data[i][1]); 
} 
1

Ein anderer Weg ist mit Array.prototype.reduce() wie folgt;

var data = [ 
 

 
    [1461931160000,583], 
 
    [1461932077000,732.16668701172], 
 
    [1461932587000,513.16668701172], 
 
    [1461933430000,675.66668701172], 
 
    [1461934599000,462.66665649414], 
 
    [1461935700000,521.5] 
 

 
], 
 
reduced = data.reduce((p,c) => (p[0].push(c[0]),p[1].push(c[1]),p) ,[[],[]]); 
 

 
document.write("<pre>" + JSON.stringify(reduced,null,2) + "</pre>");