json データがあり、d3.json 関数で解析しようとしています。データの形式は次のようになります。
{
"StoreVisitGraphCount": {
"list": {
"count": 23,
"date": "01-2013"
},
"parameters": {
"format": "m-Y",
"point": 10,
"type": "mo"
}
}
}
次の関数で解析しようとしています
d3.json("http://localhost:8080/data- services/rest/storeVisitsGraph/20120101,20131231,-1", function(error, data) {
data.StoreVisitGraphCount.list.forEach(function(d) {
d.date = parseDate(d.date);
d.count = +d.count;
});
「Uncaught TypeError: Object # has no method 'forEach'」というエラーが表示されますが、json データを次のように変更した後
{
"StoreVisitGraphCount": {
"list": [{
"count": 23,
"date": "01-2013"
}],
"parameters": {
"format": "m-Y",
"point": 10,
"type": "mo"
}
}
}
リストを配列にする..エラーなしで正常に解析されました..リスト配列にデータが1つしかない場合、残りは最初の形式のようにjsonを作成しますが、リストデータが複数ある場合は、2番目の形式のようにjsonを作成します... d3.js で関数を解決または記述して、最初の形式も解析できるようにする方法 ...