我想计算来自服务器的日期和时间 2021-02-23T08:31:37.1410141
(yyyy’-‘MM’-‘dd’T’HH’:’mm’:’ss.fffffff)
的天数差,该日期和时间为字符串格式,当前日期时间为角度。
我尝试使用
const daysDiff = Math.floor(Math.abs(<any>fromDate - <any>toDate) / (1000*60*60*24));
但这对我不起作用。如何计算日差?
答案 0 :(得分:1)
const date1 = new Date("2021-02-23T08:31:37.1410141");
const date2 = new Date();
const diffTime = date2.getTime() - date1.getTime();
const diffDays = Math.floor(Math.abs(diffTime / (1000 * 3600 * 24)));
答案 1 :(得分:0)
这对你有用吗?
Date.now() - <old date timestamp>
这给出了以毫秒为单位的差异
所以要计算我们使用的天数差异:
Math.floor((Date.now() - <old date timestamp>) / (1000 * 60 * 60 * 24))
答案 2 :(得分:0)
我在接收 2020-11-12T12:18:58.019+03:30
之类的数据时遇到了同样的问题,但我用这段代码处理了它:
const date = createAt.substr(0, 10);
const time = createAt.substr(11, 19).split('.')[0];
if (date === '0001-01-01') {
return '';
} else {
return (
time +
' - ' +
moment(date, 'YYYY-M-D').locale('fa').format('YYYY/MM/DD')
);
}
由于您接收到的数据字符串有 27 个,因此您必须根据需要更改 .substr(0, 10)
方法