Z instance data JavaScript můžeme získat hodnoty dne, měsíce a roku pomocí getDate()
, getMonth()
a getFullYear()
metody:
// month is zero-based (0-11)
const date = new Date(2019, 7, 7);
date.getDate(); // 7
date.getMonth(); // 7
date.getFullYear(); // 2019
Nyní vytvoříme malou funkci, která vezme datum jako argument a porovná výše uvedené hodnoty s dnešními hodnotami data a vrátí true, pokud jsou obě stejné:
const isToday = (date) => {
const today = new Date()
return date.getDate() === today.getDate() &&
date.getMonth() === today.getMonth() &&
date.getFullYear() === today.getFullYear();
};
Zde je návod, jak jej můžete použít:
const date = new Date(2019, 7, 7);
console.log(isToday(date)); // true
Případně můžete rozšířit objekt data přidáním výše uvedené funkce přímo do prototypu objektu, jak je uvedeno níže:
Date.prototype.isToday = function () {
const today = new Date()
return this.getDate() === today.getDate() &&
this.getMonth() === today.getMonth() &&
this.getFullYear() === today.getFullYear();
};
Nyní stačí zavolat na isToday()
metoda na libovolném datovém objektu pro porovnání s dnešním datem:
const date = new Date(2019, 7, 7);
console.log(date.isToday());