我有兩個特定格式的日期(字串)。我需要驗證當前日期是否低于允許的最大日期:
var date_current = '03_25_2022';
var date_max = '03_30_2022';
格式將始終為m_d_Y。由于這些在技術上是字串,將它們作為日期進行比較的最佳方法是什么?
我正在使用此功能,但我不確定該方法:
function compareDates(d1, d2){
var parts = d1.split('_');
var d1 = Number(parts[1] parts[2] parts[0]);
parts = d2.split('_');
var d2 = Number(parts[1] parts[2] parts[0]);
return d1 <= d2;
}
uj5u.com熱心網友回復:
您可以先將這些字串轉換為日期物件,然后比較它們的時間戳,如下所示:
function strToDate(str) {
const splits = str.split('_');
if (splits.length !== 3) {
throw Error("Invalid date");
}
return new Date(splits[2], parseInt(splits[0]) - 1, splits[1]);
}
let dateCurrent = strToDate('03_25_2022');
let dateMax = strToDate('03_30_2022');
console.log(dateMax.getTime() > dateCurrent.getTime())
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/453948.html
標籤:javascript 日期 日期比较
