如何检查时间戳是否属于当前日期

Javascript: how to check if a timestamp belongs to the current day?

本文关键字:时间戳 是否 属于 当前日期 检查 何检查      更新时间:2023-09-26

我想知道某个时间戳是否属于今天,但我在javascript日期管理中迷路了。

是否有办法检查时间戳是否属于当前日期?

简单地检查这两天的第一个时间戳并比较它们

var ts = 1564398205000;
var today = new Date().setHours(0, 0, 0, 0);
var thatDay = new Date(ts).setHours(0, 0, 0, 0);
if(today === thatDay){
    console.log("*** Same day ***");
}

这对我来说似乎很讨厌,但是你可以做类似的事情:

function isInToday(inputDate)
{
  var today = new Date();
  if(today.setHours(0,0,0,0) == inputDate.setHours(0,0,0,0){ return true; }
  else { return false; }  
}

假设您已经将输入日期设置为JS日期。这将检查两个日期是否发生在同一天,如果是则返回true,否则返回false。

我相信有人会想出一个更简洁的方法来做这个或者在这个失败的情况下,但据我所知,这个应该可以满足你的需要。

你真的可以依靠ISO日期字符串与一个substr函数来比较两个字符串

var T=1479288780873; /*assume your timestamp value*/
var theDay=new Date(T);
var today=new Date;
theDay.toISOString().substr(0,10) == today.toISOString().substr(0,10) ? console.log("same day"):null;

你可以这样做:

var day = 24 * 60 * 60 * 1000; //nb millis in a day
var todayTimestamp = new Date(year, month, day).getTime(); // Be careful month is 0 start
//OR
var todayTimestamp = new Date().setHours(0,0,0,0).getTime();
var diff = myTimestamp - todayTimestamp;
if ( diff >= 0 && diff  <= day ) {
    console.log("timestamp is today");
else {
    console.log("timestamp is not today");
}
var timestamp = '2016-11-16 03:14:07.999999';
var datestamp = timestamp.substring(0, 10);
Date.prototype.yyyymmdd = function() {
  var mm = this.getMonth() + 1; 
  var dd = this.getDate();
  return [this.getFullYear(),  mm,  dd].join('-');
};
var date = new Date();
date.yyyymmdd();
console.log(String(datestamp) === String(date.yyyymmdd()));

这取决于时间戳的格式。下面是实现这一点的最基本方法:

var today = new Date(year, month, day);
var timestamp = //your timestamp;
if (timestamp == timestamp){ //make sure the date formats are the same
//your code
}

我希望这是你正在寻找的,有更多的方法与javascript日期引用,不要犹豫,查找它