我有一个使用日期格式化的功能,
export function FormatDate(date: string) {
if (date != null) {
return moment.utc(date).format('DD MMM YYYY');
}
else
return "";
}
但问题是收到的空日期是" 0001-01-01" (DateTime最小值)。如何用时刻js检查它?
无法找到直接的方法来做到这一点。以下代码有效,但它很难看,
new moment("0001-01-01").format("DD MMM YYYY") == moment.utc(date).format("DD MMM YYYY")
" date"我收到的是" /日期(-62135596800000)/"格式。
我试过了,moment.utc(date).isAfter("0001-01-01")
并且它不能正常工作,返回true。
检查序列化日期的最佳方法是不是最短日期?
答案 0 :(得分:3)
我认为你在比较日期时错过了时区部分。请参阅以下代码,如果需要,请告知我们:
filtered = _.pick(obj, function(value, key) {return value;})
答案 1 :(得分:0)
如果你的日期是 c# 格式你可以这样做
var dateObject = "/Date(-62135596800000)/";
var ScriptDate = new Date(parseInt(dateObject.substr(6)));
var minDate = moment.utc("0001-01-01");
if(moment.utc(ScriptDate).isAfter(minDate)){
console.log("Correct date");
}else{
console.log("Incorrect date");
}