Javascript 当计时器以HTML格式输出时,为什么会输出Nan

Javascript 当计时器以HTML格式输出时,为什么会输出Nan,javascript,html,timer,Javascript,Html,Timer,我制作了一个反向计时器,它从querySelectorAll获取它的值,可能有几个值,所以我设置了一个循环,可以很好地工作,但只有在我想要以HTML输出时才在控制台中进行 我上课有几次约会 let date_reg_end = document.querySelectorAll(".time1"); 我计算计时器本身并输出它 let countDownDate=setInterval(函数(){ 对于(变量i=0;i

我制作了一个反向计时器,它从
querySelectorAll
获取它的值,可能有几个值,所以我设置了一个循环,可以很好地工作,但只有在我想要以HTML输出时才在控制台中进行

我上课有几次约会

 let date_reg_end = document.querySelectorAll(".time1");
我计算计时器本身并输出它

let countDownDate=setInterval(函数(){
对于(变量i=0;i}, 1000);使用数据属性而不是innerHTML


days+'d'+hours+'h'+minutes+'m'
不能解析为日期

第一次之后,您的日期注册表中的日期字符串无效

而是使用数据属性:

const date\u reg\u end=document.queryselectoral(“.time”);
让countDownDate=setInterval(函数(){
for(设i=0;i


使用数据属性而不是innerHTML


days+'d'+hours+'h'+minutes+'m'
不能解析为日期

第一次之后,您的日期注册表中的日期字符串无效

而是使用数据属性:

const date\u reg\u end=document.queryselectoral(“.time”);
让countDownDate=setInterval(函数(){
for(设i=0;i



您能否完成问题中的示例,使其成为可运行的演示?我为您制作了一个片段。请在
days+'d'+hours+'h'+minutes+'m'中添加相关HTML
不可解析为日期。而是使用数据属性。第一次之后,您的日期记录中的日期字符串无效。可能的原因是您的日期字符串(其中一个或多个)无效。当这种情况发生时,Date实例将无效,所有getter都将返回
NaN
。如果我转到控制台,一切正常,两个日期都会计算并更改其值,但只有在我以html输出后才在控制台中,然后NanCan您可以完成问题中的示例以成为可运行的演示吗?我为您制作了一个片段。请在
days+'d'+hours+'h'+minutes+'m'中添加相关HTML
不可解析为日期。而是使用数据属性。第一次之后,您的日期记录中的日期字符串无效。可能的原因是您的日期字符串(其中一个或多个)无效。当这种情况发生时,Date实例将无效,所有getter将返回
NaN
。如果我转到控制台,一切正常,两个日期都会计算并更改其值,但只有在我以html格式输出NaN时才会在控制台中,但他没有以该格式解析日期。他把它换成那种格式。我们不知道
innerHTML
,@sonic是的,我们知道
date\u reg\u end=document.queryselectoral(“.time1”)
Date.parse(Date\u reg\u end[i].innerHTML)
Date\u reg\u end[i].innerText=days+'d'+hours+'h'+minutes+'m'不管那是什么,它都是不可解析的。我想
date\u reg\u end[i]
只会改变一个元素好吧,我明白了。我只是完全忽略了它在
setInterval
函数中,但他没有用那种格式解析日期。他把它换成那种格式。我们不知道
innerHTML
,@sonic是的,我们知道
date\u reg\u end=document.queryselectoral(“.time1”)
Date.parse(Date\u reg\u end[i].innerHTML)
Date\u reg\u end[i].innerText=days+'d'+hours+'h'+minutes+'m'不管那是什么,它都是不可解析的。我想
date\u reg\u end[i]
只会改变一个元素好吧,我明白了。我完全忽略了它在
setInterval
函数中