首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >比较javascript中的时间戳

比较javascript中的时间戳
EN

Stack Overflow用户
提问于 2017-09-29 06:04:49
回答 3查看 41.1K关注 0票数 8

我有一个保存在字符串中的日期,格式如下:

该值由后端服务提供。

现在,在javascript中,如果时间戳大于当前时间戳,我如何比较?我的意思是,我需要知道那个时间是否已经发生,或者还没有计入小时和分钟,而不仅仅是日期。

EN

回答 3

Stack Overflow用户

发布于 2017-09-29 06:14:28

您还可以将其转换为unix时间:

代码语言:javascript
复制
console.log(new Date('2017-09-28T22:59:02.448804522Z').valueOf())

const currentTime = new Date('2017-09-28T22:59:02.448804522Z').valueOf()
    
const expiryTime = new Date('2017-09-29T22:59:02.448804522Z').valueOf()

if (currentTime < expiryTime) {
    console.log('not expired')
}

票数 11
EN

Stack Overflow用户

发布于 2017-09-29 06:12:13

代码语言:javascript
复制
const anyTime = new Date("2017-09-28T22:59:02.448804522Z").getTime();
const currentTime = new Date().getTime();
if(currentTime > anyTime){
    //codes
}
票数 5
EN

Stack Overflow用户

发布于 2017-09-29 06:14:50

如果可以,我会使用moment.js

*

https://momentjs.com/

您可以创建一个矩,指定字符串的确切格式,例如:

代码语言:javascript
复制
var saveDate = moment("2010-01-01T05:06:07", moment.ISO_8601);

然后,如果您想知道

是在过去:

布尔isPast = (now.diff(saveDate) > 0);

如果你不能包含一个外部库,你将不得不用字符串解析出年、日、月、小时等--然后手动计算转换成毫秒。然后使用Date对象,您可以获得毫秒数:

代码语言:javascript
复制
var d = new Date();
var currentMilliseconds = d.getMilliseconds();

在这一点上,您可以将您的毫秒数与currentMilliseconds进行比较。如果currenMilliseconds更大,那么saveDate就是过去的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46478974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档