2017-03-09 58 views
0

目前我的Rails控制器返回對象的數組:關閉對象的jQuery的數組到一個新的數組

var _data = []; 

$.getJSON(my_url, function(data) { 
    $.map(data, function(v) { 
    _data.push([v.occurrences, v.period]) 
    }); 
}); 

console.log(_data) => [] 

,當擴張看起來是這樣的:

Array[4] 
0:Object 
1:Object 
2:Object 
3:Object 

而單個對象擴大時的樣子像這樣:

0:Object 
occurrences:1 
period:1488499200000 

我遇到了麻煩映射的初始數組對象的方式,我的fi最終結果將是由每個對象的出現值和週期值的數組的數組。

最終結果謹像:

[[1488499200000, 1],[.., ..],[.., ..],[.., ..]] 

所以,我可以使用每個陣列的圖表中爲x軸和y軸點。

我使用.MAP,。每次,試圖(爲我..)等,沒有運氣。

編輯:

這是我的圖表數據:

var line_data2 = { 
    data: _data, 
    color: "#00c0ef" 
}; 

$.plot("#myGraph", [line_data2], { 
    grid: { 
    hoverable: true, 
    borderColor: "#f3f3f3", 
    borderWidth: 1, 
    tickColor: "#f3f3f3" 
    }, 
    series: { 
    shadowSize: 0, 
    lines: { 
     show: true 
    }, 
    points: { 
     show: true 
    } 
    }, 
    lines: { 
    fill: false, 
    color: ["#3c8dbc", "#f56954"] 
    }, 
    yaxis: { 
    show: true, 
    }, 
    xaxis: { 
    show: true, 
    mode: "time", 
    timeformat: "%m/%d/%Y" 
    } 
}); 
+1

的[我如何返回從一個異步調用的響應?(可能的複製http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an -asynchronous呼叫) – Dhiraj

+0

@Dhiraj這不是它 – asalgan

+0

你的代碼是正確的,我已經嘗試[的jsfiddle(https://jsfiddle.net/84p5kevk/),我能看到'上圖功能_data'用? –

回答

0

有可能比這更完美的解決方案,但是這將讓你的形陣列我想你所要求的。

let _data = [ 
    {occurrences: 1, period: 200}, 
    {occurrences: 3, period: 300}, 
    {occurrences: 6, period: 400} 
]; 

let newData = _data.map((x)=>{ 
    let arr = []; 
    arr.push(x.occurrences); 
    arr.push(x.period); 
    return arr; 
}); 

console.log(newData); 

您可以更進一步,只需循環遍歷對象而不是硬編碼名稱。

let newData = _data.map((x)=>{ 
    let arr = []; 
    for(let i in x){ 
    arr.push(x[i]); 
    } 
    return arr; 
}); 
+0

因此,當我實現第一個解決方案時,我得到: [Array [2],Array [2],Array [2]] 看起來準確,但由於某種原因,當我執行$ .getJSON和console.log我得到: [],它擴展爲4個對象 這聽起來像一個問題,然後我怎麼投入的初始數據? – asalgan

+0

這可能是問題所在。我標記了自己的答案,因爲我無法在rails中測試。 jQuery的的getJSON應該是它解析爲你的對象,這就是爲什麼我只是一個對象字面回答。不知道爲什麼地圖不適用於一組對象。 –

相關問題