2016-12-09 183 views
-3

這是我的第三個學校作業將兩個日期與特定日期進行比較

編寫一個比較兩個日期的JavaScript函數。調用這個函數compare_date()並給這個函數兩個輸入參數。下面起飛的代碼,並確保window.alert()返回一個消息或一個日期比2日期或大或小或許日期1等於2日期

我有這樣的事情

var d1 = new Date(2017, 0, 2); // 2 januari 2017 
var d2 = new Date(2017, 0, 1); // 1 januari 2017 

window.alert(compare_date(d1,d2)); 


function compare_date(date1,date2){ 


} 
+6

問問題不是錯的,而是先嚐試一下;空功能真的嗎? –

+0

你的問題是什麼? –

+0

@Dimitri檢查這個http://stackoverflow.com/questions/492994/compare-two-dates-with-javascript – codtex

回答

1

在這裏你去:

var d1 = new Date(2017, 0, 2); // 2 januari 2017 
 
var d2 = new Date(2017, 0, 1); // 1 januari 2017 
 

 
compare_date(d1,d2); 
 
    
 
function compare_date(date1,date2){ 
 
    if (date1 > date2) { 
 
     alert("Date One is greather than Date Two."); 
 
    }else if (date2 > date1) { 
 
     alert("Date Two is greather than Date One."); 
 
    }else{ 
 
     alert("Both are equal."); 
 
    } 
 
}

JSFiddle Demo

+0

Thans這是非常有用的 – Dimitri

0

你可以嘗試下面這個,只是一個簡單的如date1 > date2

date1 > date2date1.getTime() > date2.getTime()是相同的。

var d1 = new Date(2017, 0, 2); // 2 januari 2017 
 
var d2 = new Date(2017, 0, 1); // 1 januari 2017 
 

 
window.alert(compare_date(d1,d2)); 
 

 

 
function compare_date(date1, date2){ 
 
return (date1.getTime() === date2.getTime() ? 'Equal' : (date1 > date2 ? 'date1 is greater than date 2' : 'date1 is less than date2')); 
 

 
}

+0

感謝@Aruna爲您的代碼 – Dimitri

0

這樣的事情?

var d1 = new Date(2017, 0, 2); // 2 januari 2017 
 
var d2 = new Date(2017, 0, 1); // 1 januari 2017 
 

 
window.alert(compare_date(d1,d2)); 
 

 

 
function compare_date(date1,date2){ 
 
    var diff = date1 - date2; 
 
if (diff < 0) 
 
    return "date 2 is bigger"; 
 
    else 
 
    if (diff > 0) 
 
    return "date 1 is bigger"; 
 
    else 
 
    return "are the same" 
 

 
}

+0

謝謝@JordiFlores – Dimitri

0

編輯:Math.si GN()是ECMAScript的2015

使可重複使用的功能:

則返回0的日期等於

返回-1,如果D1爲d2

之前

返回1,如果D1爲d2

var d1 = new Date(2017, 0, 2); // 2 januari 2017 
 
var d2 = new Date(2017, 0, 1); // 1 januari 2017 
 

 
window.alert(compare_date(d1,d2)); 
 

 

 
function compare_date(date1, date2){ 
 
    return Math.sign(date1.getTime() - date2.getTime()); 
 
}