JSFiddle - React, Tailwind, and code Playground

HTML

il reste <span id="days"></span>jours, <span id="hours"></span>heures, <span id="minutes"></span> et <span id="seconds"></span>secondes avant l'anniversaire

JavaScript

const birthday = new Date('2023-02-27T16:30:00');
 
$days = document.getElementById('days');
$hours = document.getElementById('hours');
$minutes = document.getElementById('minutes');
$seconds = document.getElementById('seconds');
 
function calcTimeLeft() {
    const now = new Date();
    let diff = birthday.getTime() - now.getTime();
    $days.textContent = Math.floor(diff / (1000 * 60 * 60 * 24));
 
    now.setTime(now.getTime() + Math.floor(diff / (1000 * 60 * 60 * 24)) * (1000 * 60 * 60 * 24));
    diff = birthday.getTime() - now.getTime();
    $hours.textContent = Math.floor(diff / (1000 * 60 * 60));
 
    now.setTime(now.getTime() + Math.floor(diff / (1000 * 60 * 60)) * (1000 * 60 * 60));
    diff = birthday.getTime() - now.getTime();
    $minutes.textContent = Math.ceil(diff / (1000 * 60));
 
    now.setTime(now.getTime() + Math.floor(diff / (1000 * 60)) * (1000 * 60));
    diff = birthday.getTime() - now.getTime();
    $seconds.textContent = Math.ceil(diff / (1000));
}
 
setInterval(calcTimeLeft, 1E3);