我有一堆对象,每个对象都有一个时间戳,我希望按日期分组到JSON对象中.最终目标是这样的:
myObject = {
"06/07/2012" : [
{
"timestamp" : "07/06/2012 13:30",
...
},
{
"timestamp" : "07/06/2012 14:00",
...
}
],
"07/07/2012 [...]
}
Run Code Online (Sandbox Code Playgroud)
要获取日期,我正在测试每个时间戳对象并使用:
var visitDate = new Date(parseInt(item.timestamp, 10));
visitDate.setHours(0);
visitDate.setMinutes(0);
visitDate.setSeconds(0);
Run Code Online (Sandbox Code Playgroud)
..然后我用它来存储JSON对象的名称.这看起来很混乱,我确信应该有一种更简单的做事方式.
建议/建议欢迎!!
Nic*_*ick 46
怎么样.toDateString()?
另外,使用.getDate(),.getMonth()和.getYear()?
在我看来,如果你想按日期分组,你只想访问日期,而不是设置日期.通过一些设置方式访问日期字段,您可以比较它们并将它们组合在一起,不是吗?
在这里查看所有有趣的日期方法:MDN Docs
编辑:如果要将其保留为日期对象,请执行以下操作:
var newDate = new Date(oldDate.toDateString());
Run Code Online (Sandbox Code Playgroud)
日期的构造函数非常聪明地解析字符串(虽然不是没有大量的警告,但这应该非常一致),所以使用旧日期并将其打印到没有任何时间的日期将导致您在原帖.
如果您不介意创建额外的日期对象,可以尝试:
var tempDate = new Date(parseInt(item.timestamp, 10));
var visitDate = new Date (tempDate.getUTCFullYear(), tempDate.getUTCMonth(), tempDate.getUTCDate());
Run Code Online (Sandbox Code Playgroud)
我做了一些非常类似的事情,没有时间得到当月的日期.
小智 7
var today = new Date();
var year = today.getFullYear();
var mes = today.getMonth()+1;
var dia = today.getDate();
var fecha =dia+"-"+mes+"-"+year;
console.log(fecha);Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
78641 次 |
| 最近记录: |