gpt4 book ai didi

javascript - 组合位置并从 JSON 输出组合数据

转载 作者:行者123 更新时间:2023-11-27 23:15:41 27 4
gpt4 key购买 nike

这个想法是获取所有“位置”并将它们合并在一起以给出一个数字供我的图表读取。假设您有 5 个“地点”,均为纽约,且“日期”各不相同。我想将所有 5 个合并在一起并输出 5 个数字,以及 .json 中合并的“Punches”。现在我让它抓取位置,并合并类似的拳击。但我想获取例如纽约实例的总数并输出该数字。

chart.json

    [  
{
"Date":"2003",
"Punches":"0",
"Locations":"New York"
},
{
"Date":"2003",
"Punches":"1",
"Locations":"New York"
},
{
"Date":"2004",
"Punches":"0",
"Locations":"Chicago"
},
{
"Date":"2004",
"Punches":"1",
"Locations":"Chicago"
},
{
"Date":"2004",
"Punches":"1",
"Locations":"Ohio"
},
{
"Date":"2004",
"Punches":"1",
"Locations":"Ohio"
},
{
"Date":"2007",
"Punches":"0",
"Locations":"Ohio"
},
{
"Date":"2007",
"Punches":"0",
"Locations":"Florida"
},
{
"Date":"2009",
"Punches":"1",
"Locations":"Florida"
},
{
"Date":"2007",
"Punches":"0",
"Locations":"New York"
},
{
"Date":"2009",
"Punches":"0",
"Locations":"New York"
},
{
"Date":"2009",
"Punches":"0",
"Locations":"Chicago"
},
{
"Date":"2010",
"Punches":"0",
"Locations":"New York"
},
{
"Date":"2010",
"Punches":"0",
"Locations":"Florida"
}
]

JS

function LocationMerge()
{
$.ajax(
{
url: 'data.json',
data:{},
dataType: 'json',
success: function(data)
{
var string = JSON.stringify(data);
var objects = $.parseJSON(string);
var categories = new Array();
var mergedPieces = new Array();
var i = 0;
_.each(objects, function(obj)
{
var existingObj;
if ($.inArray(obj.Locations, categories) >= 0)
{
existingObj = _.find(objects, function(o)
{
return o.Locations=== obj.Locations;
});
existingObj["Punches"] += obj["Punches"];
}
else
{
mergedPieces[i] = obj;
categories[i] = obj.Locations;
i++;
}
});
mergedPieces = _.sortBy(mergedPieces, function(obj)
{
return obj["Punches"];
}).reverse();
_.each(mergedPieces, function(obj)
{
var output = '';
_.each(obj, function(val, key)
{
output += key + ': ' + val + '<br>';
});
output += '<br>';
console.log(output);
});
}
});
}

最佳答案

Code below

var dataset = [  
{
"Date":"2003",
"Punches":"0",
"Locations":"New York"
},
{
"Date":"2003",
"Punches":"1",
"Locations":"New York"
},
{
"Date":"2004",
"Punches":"0",
"Locations":"Chicago"
},
{
"Date":"2004",
"Punches":"1",
"Locations":"Chicago"
},
{
"Date":"2004",
"Punches":"1",
"Locations":"Ohio"
},
{
"Date":"2004",
"Punches":"1",
"Locations":"Ohio"
},
{
"Date":"2007",
"Punches":"0",
"Locations":"Ohio"
},
{
"Date":"2007",
"Punches":"0",
"Locations":"Florida"
},
{
"Date":"2009",
"Punches":"1",
"Locations":"Florida"
},
{
"Date":"2007",
"Punches":"0",
"Locations":"New York"
},
{
"Date":"2009",
"Punches":"0",
"Locations":"New York"
},
{
"Date":"2009",
"Punches":"0",
"Locations":"Chicago"
},
{
"Date":"2010",
"Punches":"0",
"Locations":"New York"
},
{
"Date":"2010",
"Punches":"0",
"Locations":"Florida"
}
];

map = {};
dataset.forEach(function(data){ if(map[data.Locations]){map[data.Locations]=map[data.Locations]+1}else{map[data.Locations]=1}});

snippet.log(map)
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>

关于javascript - 组合位置并从 JSON 输出组合数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35849236/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com