0
我在下面有兩個for循環循環JSON文件的函數。我遇到的問題是在barFactory函數中調用的第二個循環中,它僅返回數組中的最後一個項目。我如何解決這個問題,我在每次迭代時都會調用圖表對象來創建,所以不應該按照我的邏輯進行操作。JavaScript for循環僅返回數組中的最後一項
var looper = function(sec0, vz, lOrR) {
$('#' + lOrR + 'Title').text(sec0);
for (var i = 0; i < vz[0]['Areas'].length; i++) {
var tText = Object.keys(vz[0]['Areas'][i]);
var root = vz[0]['Areas'][i][tText][0];
barFactory(root, sec0, lOrR, i, tText);
}
function barFactory(sec1, sec0, lOrR, i, tText) {
var dataName;
for (var j = 0; j < sec1[sec0].length; j++) {
charts.title.text = sec1[sec0][j]["Label"];
dataName = sec1[sec0][j]['Metrics'][5]['Rep Res. %'].slice(0, -1);
charts.series[0].name = dataName;
charts.series[0].data = [parseFloat(dataName)];
chart = new Highcharts.Chart(charts);
}
}
}
因此,您嘗試爲「Areas」數組中的每個項目創建一個新的Highchart。你想用圖表做什麼?它似乎沒有返回它或將它附加到DOM –
我有單獨的部分,我沒有將其添加到DOM。繪製條形圖,但只繪製數組中的最後一個。 – Claude
它不是「返回」任何東西;目前尚不清楚如何在沒有更多信息的情況下工作。 '圖表'也總是指同一件事情。 –