Javascript 我在这里尝试从约会时间中提取正确的小时数,我的数学哪里出了问题?

Javascript 我在这里尝试从约会时间中提取正确的小时数,我的数学哪里出了问题?,javascript,datetime,Javascript,Datetime,我有一个倒计时器,由于某种原因,我无法正确显示时间。无论如何,小时数始终显示为零。有人能再检查一下我的数学,看看我错在哪里吗 let countTitle = ''; let countDate = ''; let countDateValue = new Date(); const second = 1000; const minute = second * 60; const hour = minute * 60; const day = hour * 24; const today = n

我有一个倒计时器,由于某种原因,我无法正确显示时间。无论如何,小时数始终显示为零。有人能再检查一下我的数学,看看我错在哪里吗

let countTitle = '';
let countDate = '';
let countDateValue = new Date();
const second = 1000;
const minute = second * 60;
const hour = minute * 60;
const day = hour * 24;
const today = new Date().toISOString().split("T")[0];


function countdown() {
    const todayValue = new Date().getTime();
    
    const difference = countDateValue - todayValue;
    
    const days = Math.floor(difference / day);
    const hours = Math.floor((difference % day) / hour);
    const minutes = Math.floor((difference % hour) / minute);
    const seconds = Math.floor((difference % minute) / second);
    
}

function getData(e) {
    e.preventDefault();
    countTitle = e.srcElement[0].value;
    countValue = e.srcElement[1].value;
    
    countDateValue = new Date(countValue).getTime();
    
    countdown();
}

我看不出你的代码有任何问题,它给了我完美的结果,除非输入日期本身是错误的

当我在一些示例日期(16196283794411619227379441)中运行您的代码时,结果非常完美
4152320

让countTitle='';
让countDate='';
让countDateValue=新日期();
常数秒=1000;
常数分钟=秒*60;
常数小时=分钟*60;
常数天=小时*24;
const today=new Date().toISOString().split(“T”)[0];
函数倒计时(){
const todayValue=1619227379441;//new Date().getTime();
常量差=countDateValue-todayValue;
施工天数=数学下限(差值/天);
常数小时=数学楼层((差异%天)/小时);
const minutes=数学楼层((差异百分比小时)/分钟);
常数秒=数学楼层((差分%)/秒);
日志(天、小时、分钟、秒)
}
函数getData(e){
countDateValue=1619628379441;//新日期(countValue).getTime();
倒计时();
}

getData()不清楚且不完整,请阅读什么是e.srcElement?您需要说明如何以及何时调用倒计时。在
countDateValue-todayValue
中,这两个变量都使用
new Date()
初始化,因此如果初始化countDateValue的全局代码与初始化todayValue的函数调用之间的时间差小于1小时,则小时值将为零。