我正在进行api调用并根据需要对数据进行排序。唯一的问题是我必须计算存在的日期。
目前我已成功显示了我想要的数据。看起来像这样。
2017-06-09T17:49:49.975+12:00
2017-07-13T08:59:20.023+12:00
2017-05-29T14:17:18.148+12:00
2017-05-21T22:19:07.951+12:00
2017-06-09T13:59:50.464+12:00
2017-06-13T08:18:30.340+12:00
2017-07-27T12:41:17.423+12:00
现在我想知道有多少人有相同的日期。格式就像是,
{ date = 2017-06-09T17:49:49.975+12:00, count = 2, date = 2017-07-13T08:59:20.023+12:00, count = 1... and so on... }
我从这里尝试过几个代码,但对我来说并不适用。
这是我最近尝试过的, https://codepen.io/anon/pen/gxyZXm
答案 0 :(得分:0)
将内循环保持在循环外部,如下所示
String url="jdbc:mysql://localhost:3306/student?autoReconnect=true&useSSL=false&characterEncoding=utf8&useUnicode=true";
答案 1 :(得分:0)
我已经更新了你的笔有点工作,这是我做的关键事情。
计算每个时间戳的出现次数
let keys = Object.keys(data)
let dateCount = keys.reduce((acc, val) => {
if (data[val].created_at in acc) {
acc[data[val].created_at]++
} else {
acc[data[val].created_at] = 1
}
return acc
}, {})
dateCount
现在有每个日期出现的次数。从那里,它非常简单。我创建了一个抓取计数的count
变量,或者如果它不存在,则将其设置为0.
$.each(data, function (i, object) {
if (!object.last_activity_at) return;
const count = dateCount[object.last_activity_at] ? dateCount[object.last_activity_at] : 0
$("body").append("<p>" + object.last_activity_at + " " + count + "</p>");
答案 2 :(得分:0)
只需这样做:
var counts = {};
dateArray.forEach(function(x) {
counts[x] = (counts[x] || 0) + 1;
});
console.log(counts);
答案 3 :(得分:0)
这是我的解决方案版本。
<强> JS:强>
jQuery.widget.bridge('uibutton', jQuery.ui.button);
//receive calls from typescript code to update the layouts
var AdminLTE = (function() {
return {
init: function() {
jQuery(function(){
jQuery.AdminLTE.layout.activate();
jQuery.AdminLTE.layout.fix();
jQuery.AdminLTE.layout.fixSidebar();
});
}
}
})(AdminLTE||{});