【发布时间】:2023-04-06 10:06:01
【问题描述】:
我有一堆对象,每个对象都有一个时间戳,我想按日期分组到一个 JSON 对象中。最终目标是这样的:
myObject = {
"06/07/2012" : [
{
"timestamp" : "07/06/2012 13:30",
...
},
{
"timestamp" : "07/06/2012 14:00",
...
}
],
"07/07/2012 [...]
}
为了获取日期,我正在测试每个 timestamp 对象并使用:
var visitDate = new Date(parseInt(item.timestamp, 10));
visitDate.setHours(0);
visitDate.setMinutes(0);
visitDate.setSeconds(0);
..然后我用它来存储 JSON 对象的名称。看起来很乱,我相信应该有更简单的做事方式。
欢迎提出建议!
【问题讨论】:
-
我无法想象
new Date(parseInt("07/06/2012 13:30",10));会起作用。还是我错过了什么? -
是的,你是对的 - 抱歉,这是从我现有的一些代码中粘贴出来的,没有经过校对!当前代码将时间戳存储为“从纪元开始的毫秒数”格式,因此在其原始上下文中更有意义...
-
您应该始终使用
.toISOString()存储您的日期,您将遇到使用您拥有的字符串存储日期的时区问题。唯一要使用该格式的时间是在显示时。 -
你是对的@justin.m.chase - 现在你应该这样做。写这个问题时,我们仍然必须支持不支持
toISOString()的IE8。哈利路亚,我们现在生活在一个现代世界!
标签: javascript date