DK *_*ALT 36 javascript c# datetime-format
我在Javascript中有一个从MVC接收C#DateTime的函数.如果日期为空,则应返回" - ",如果它是有效日期,则应返回格式化日期.
重要提示:无法以C#的其他格式发送日期.
使用Javascript:
function CheckDate(date) {
if (date == "Mon Jan 01 0001 00:00:00 GMT+0000 (GMT Daylight Time)")
return "-";
else {
var dat = new Date(date);
return dat.getFullYear() + dat.getMonth() + dat.getDay();
}
Run Code Online (Sandbox Code Playgroud)
如果日期是C#New DateTime,有没有更好的方法来比较?
如何以"yyyy/MM/dd"格式解析并返回日期?
Sco*_*ica 48
鉴于你坚持使用的输出,我想不出更好的方法来DateTime在javascript端捕获0.
Date.parse 应该适用于您的解析需求,但它返回毫秒数,因此您需要在其周围包装Date构造函数:
var date = new Date(Date.parse(myCSharpString));
Run Code Online (Sandbox Code Playgroud)
对于返回日期,您只需要
date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + (date.getDate() + 1);
Run Code Online (Sandbox Code Playgroud)
(date.getMonth并且date.getDate是0索引而不是1索引.)
小提琴:http://jsfiddle.net/GyC3t/
编辑
感谢JoeB的抓捕,让我做一个修正.该date.getMonth()函数是0索引的,但该date.getDate()函数是1索引的.小提琴与+1"工作",因为date.getMonth在UTC之前的本地时间工作.我没有正确检查文档,只是添加了1,它与小提琴一起工作.
更合适的方法是:
对于返回日期,您只需要
date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + (date.getUTCDate());
Run Code Online (Sandbox Code Playgroud)
(date.getMonth0索引,而date.getDate1索引,但易受时区差异的影响.)
小提琴:http://jsfiddle.net/GyC3t/25/
| 归档时间: |
|
| 查看次数: |
77521 次 |
| 最近记录: |