2016-11-16 231 views
0

我想知道今天是否屬於某個時間戳,但我在Javascripts日期管理中迷路了。Javascript:如何檢查時間戳是否屬於當前日期?

有什麼方法可以檢查時間戳是否屬於當前日期?

+0

轉換時間戳記日期,並檢查其是否與當前的日期一致。保持格式沒有時間,只有日期(例如'Y-m-d') – Justinas

+0

實例化兩個日期對象:1)來自給定的時間戳; 2)從現在開始。然後檢索每個日期的日期分量(Y,m,d)並對它們進行比較 – hindmost

回答

-1

這要看是什麼格式的時間戳 但這裏是實現這一目標的最根本途徑。

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日期參考,請不要猶豫look it up

1

你真的可以依靠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; 
2

似乎討厭十歲上下給我,但是你可以做類似的東西比較:

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。

我敢肯定有人會以一種更簡潔的方式來做到這一點,或者這種情況下失敗,但據我所知,這應該爲你做的伎倆。

0

你可以做這樣的事情:

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"); 
} 
0
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())); 
相關問題