[英]How to return a string difference between two dates (current date and input date) in JavaScript?
我有一個用JavaScript編寫的函數,用於獲取日/月/年小時/分鍾/秒AM / PM格式的日期時間。 我想要的是一個函數,它將允許我返回以下類型的字符串(1秒或5秒或2分鍾或4小時或1天或5個月或5年)。 這是一個示例代碼片段:
function (var inputDate)
{
var difference = dateNow - inputDate;
//1 second, or 5 seconds, or 2 minutes, or 4 hours, or 1 day, or 5 months, or 5 years - I want to return the highest difference between both dates (current date and the date, which I input)
return string difference;
}
提前致謝!
我再次參加聚會很晚,但是正如@ user1950292所建議的,您可以減去兩個日期並設置差值格式。 就像是:
function dateDiffString(a,b) {
var diff = (a.getTime() - b.getTime());
var diffs = {
years : Math.floor((diff) / (1000 * 60 * 60 * 24 * 365)),
months : Math.floor((diff) / (1000 * 60 * 60 * 24 * 30)),
weeks : Math.floor((diff) / (1000 * 60 * 60 * 24 * 7)),
days : Math.floor((diff) / (1000 * 60 * 60 * 24)),
hours : Math.floor((diff) / (1000 * 60 * 60)),
mins : Math.floor((diff) / (1000 * 60)),
secs : Math.floor((diff) / (1000))
}
//iterate through diffs to find first number > 0
for (var prop in diffs) {
if(diffs.hasOwnProperty(prop) && diffs[prop] > 0){
return diffs[prop] + " " + prop;
}
}
}
var today = new Date();
var anotherDay = new Date("2013 12 13,11:52:39");
alert(dateDiffString(today,anotherDay));
您可以創建兩個Date對象並減去它們。 然后獲取結果的天,小時,分鍾,秒,然后選擇要輸出的結果。 我沒有代碼atm,但是Date用法非常直觀。
https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Date
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.