📢 Nuovo Corso Laravel API disponibile!

Esercizi Date Javascript

Ecco degli esercizi semplici con soluzione per praticare le basi del lavoro con le date in Javascript.

Esercizio 1

Scrivi un codice che ottenga la data corrente e la visualizzi in console.
const dataCorrente = new Date();
console.log("Data corrente:", dataCorrente);

Esercizio 2

Scrivi un codice che ottenga il giorno corrente (numero del giorno della settimana) e lo visualizzi in console.
const dataCorrente = new Date();
const giornoCorrente = dataCorrente.getDay();
console.log("Giorno corrente:", giornoCorrente);

Esercizio 3

Scrivi un codice che ottenga il mese corrente (numero del mese) e lo visualizzi in console.
const dataCorrente = new Date();
const meseCorrente = dataCorrente.getMonth();
console.log("Mese corrente:", meseCorrente);

Esercizio 4

Scrivi un codice che ottenga l'anno corrente e lo visualizzi in console.
const dataCorrente = new Date();
const annoCorrente = dataCorrente.getFullYear();
console.log("Anno corrente:", annoCorrente);

Esercizio 5

Scrivi un codice che prenda un numero di mese come input e restituisca il numero di giorni in quel mese.
function numeroGiorniMese(mese) {
const data = new Date(2023, mese, 0);
return data.getDate();
}
const meseSpecifico = 2; // Marzo
const numeroGiorni = numeroGiorniMese(meseSpecifico);
console.log("Numero di giorni nel mese:", numeroGiorni);

Esercizio 6

Scrivi un codice che prenda la data di nascita come input e calcoli l'età corrente.
function calcolaEta(dataNascita) {
const dataCorrente = new Date();
const differenzaAnni = dataCorrente.getFullYear() - dataNascita.getFullYear();
const differenzaMesi = dataCorrente.getMonth() - dataNascita.getMonth();
const differenzaGiorni = dataCorrente.getDate() - dataNascita.getDate();
// Controlla se il compleanno è già passato nell'anno corrente
if (differenzaMesi < 0 || (differenzaMesi === 0 && differenzaGiorni < 0)) {
return differenzaAnni - 1;
}
return differenzaAnni;
}
const dataNascita = new Date(1990, 5, 15);
const eta = calcolaEta(dataNascita);
console.log("Età:", eta);

Esercizio 7

Scrivi un codice che prenda due date come input e calcoli la differenza in giorni tra le due date.
function differenzaInGiorni(data1, data2) {
const differenza = Math.abs(data2 - data1);
const millisecondiInUnGiorno = 24 * 60 * 60 * 1000;
return Math.floor(differenza / millisecondiInUnGiorno);
}
const dataInizio = new Date(2022, 0, 1);
const dataFine = new Date(2022, 0, 10);
const differenzaGiorni = differenzaInGiorni(dataInizio, dataFine);
console.log("Differenza in giorni:", differenzaGiorni);

Esercizio 8

Scrivi un codice che prenda una data come input e verifichi se è una data futura rispetto alla data corrente.
function isDataFutura(data) {
const dataCorrente = new Date();
return data > dataCorrente;
}
const dataDaVerificare = new Date(2023, 0, 1);
const isFutura = isDataFutura(dataDaVerificare);
console.log("La data è futura?", isFutura);

Esercizio 9

Scrivi un codice che prenda una data come input e la formatti in una stringa nel formato "gg/mm/aaaa".
function formattaData(data) {
const giorno = String(data.getDate()).padStart(2, "0");
const mese = String(data.getMonth() + 1).padStart(2, "0");
const anno = data.getFullYear();
return `${giorno}/${mese}/${anno}`;
}
const dataDaFormattare = new Date();
const dataFormattata = formattaData(dataDaFormattare);
console.log("Data formattata:", dataFormattata);

Esercizio 10

Scrivi un codice che prenda una data come input e restituisca il nome del giorno della settimana corrispondente.
const nomiGiorniSettimana = [
"Domenica",
"Lunedì",
"Martedì",
"Mercoledì",
"Giovedì",
"Venerdì",
"Sabato",
];
function nomeGiornoSettimana(data) {
const giorno = data.getDay();
return nomiGiorniSettimana[giorno];
}
const dataDaVerificare = new Date();
const nomeGiorno = nomeGiornoSettimana(dataDaVerificare);
console.log("Nome giorno:", nomeGiorno);