2016-10-28 67 views
0

我想爲現在的nodejs或javascript添加24小時的unix時間戳。我也想知道Date DOM對象中是否有直接的函數或屬性。 我在PHP中找到了相關函數。此代碼將在當前unix時間戳添加24小時後返回新的unix時間。如何在當前的NodeJs或javascript中添加24小時的時間戳?

$currentUnixTime=time(); 
$newUnixTime=strtotime('+1 day', $currentUnixTime); 
return newUnixTime; 
+1

的可能的複製[添加小時爲Javascript Date對象?(http://stackoverflow.com/questions/1050720/adding-hours-to-javascript-date-object) – Andrea

+0

如果您需要更大量的日期操作momentjs的強烈建議 – mcfedr

回答

1
var myDate = new Date(); 
myDate.setHours(myDate.getHours()+24); 
return myDate; 
+1

這是一個比另一個 – Beginner

+0

感謝您的回覆好多了,我 運行上面的代碼和我得到的輸出如下 週五2016年10月28日17點23分52秒GMT +0530(印度標準時間) Sat Oct 29 2016 17:23:52 GMT + 0530(印度標準時間) 但是在這裏我必須再次將此字符串時間轉換爲unix時間戳。這會增加我更多的處理時間。是否有任何直接的功能,我只會輸入額外的額外時間(當前unixtime + 24小時),它會在unix時間戳中返回最終答案。 $ newUnixTime = functionName('+ 1 day',Date.now()); –

+0

標準JavaScript庫中沒有像'+1 day'這樣的事情。您可以使用像momentjs.com這樣的外部庫來執行moment()。add(1,'days') – Andrea

0

如果你特別想加入某一天,你應該使用momentjs庫,它既是frontent和可用的NodeJS。

var now = new Date() 
var tomorrow = moment(now).add(1, 'day'); 

這比增加24小時更穩健,因爲它考慮到了DST變化。出於那個唯一的原因,你應該避免在大多數情況下在JS中直接操作Date

http://momentjs.com/docs/#/manipulating/add/

幾個月的特殊考慮和多年

如果是本月的原始日期的日子比在最後一個月的 天數越大,每月的一天將在最後一個月的最後一天更改爲 。

moment([2010, 0, 31]);     // January 31 
moment([2010, 0, 31]).add(1, 'months'); // February 28 

也有特殊考慮牢記加入時間 是跨越夏令時。如果您添加年份, 個月,幾周或幾天,則原始小時將始終與添加的小時數 小時匹配。

var m = moment(new Date(2011, 2, 12, 5, 0, 0)); // the day before DST in the US m.hours(); // 5 
m.add(1, 'days').hours(); // 5 

如果要添加小時,分鐘,秒或毫秒,該 前提是您要精確到小時,並會導致 不同小時。

var m = moment(new Date(2011, 2, 12, 5, 0, 0)); // the day before DST in the US m.hours(); // 5 
m.add(24, 'hours').hours(); // 6