2012-10-08 117 views
-1

可能重複:
how to add items to an array dynamically in javascript如何實現Highcharts動態

從數據庫中獲取數據後,我想將它傳遞給系列:highchart的。以下是數據。

series: [ 

    // { name: '53411', data:[8151.74,15105.39]}, 
    // { name: '53473', data:[18703.18,6692.23]}, 
    // { name: '500606', data:[-866.78,1311.01]}, 
    // { name: '500613', data:[27621.01,68468.79]}, 
    // { name: '500614', data:[73.3,80.47]} 

] 

但我想這是動態創建,併爲我做了什麼也低於:

var seriesData = ''; 
for (var i = 0; i < data.length; i++) { 
    if (i == data.length - 1) { 
     seriesData += "{ name:'" + seriesProviderName[i] + "', data:[" + providerist[i] + "," + providersec[i] + "]}"; 
    } 
    else { 
     seriesData += "{ name:'" + seriesProviderName[i] + "', data:[" + providerist[i] + "," + providersec[i] + "]},"; 
    } 

而在這之後,我路過這個seriesData到Series: [seriesData]但它不會打印圖表。因爲它是一個字符串,它在開始和結束時都包含雙引號,並且我已經在firebug中看到了它,並且我不知道如何擺脫它。例如,「seriedData」在螢火蟲中。

"{ name: '53411', data: [8151.74,15105.39]}, 
    { name: '53473', data: [18703.18,6692.23]}, 
    { name: '500606', data: [-866.78,1311.01]}, 
    { name: '500613', data: [27621.01,68468.79]}, 
    { name: '500614', data: [73.3,80.47]} 
    " 

我想刪除這些雙引號。

+3

您需要創建它作爲一個數組,而不是字符串對象。 – TheZ

+0

@Amir,你的問題得到了答案嗎?如果是這樣,請提供信用! – Colleen

回答

0

您可以使用eval()JSON.parse()jQuery.parseJSON()(這可能是安全性和兼容性是最好的選擇,如果你正在使用jQuery)把你的字符串對象成,然後可以傳遞給highcharts JSON對象。或者,如註釋中那樣,您可以通過做例如首先將數組創建爲數組, series[0]['name']=53411;

編輯:stringify()走向另一個方向......腦屁。