我在使用 setInterval()
时遇到了这个问题:
var h1 = document.getElementById("demo");
function updateTime(d) {
h1.innerHTML = "numero del mese: " + d.getDate() +
"<br>numero della settimana: " + d.getDay() +
"<br>anno: " + d.getFullYear() +
"<br>mese: " + d.getMonth() +
"<br>ore: " + d.getHours() +
"<br>minuti: " + d.getMinutes() +
"<br>secondi: " + d.getSeconds();
}
setInterval(updateTime.bind(null, new Date()), 1000);
所有这些都可以正常工作,但只工作一次就什么也没有了。 为什么?
最佳答案
new Date()
创建一个 Date 对象,表示该对象的创建时间
您调用它一次,然后在每秒显示该时间(不会改变)的间隔中使用它。
如果您想获取当前时间,那么您需要在您在时间间隔内调用的函数内部创建一个新的 Date 对象。
例如:
setInterval(function () { updateTime(new Date()); }, 1000);
关于javascript - 为什么 element.innerHTML = 带日期信息的字符串不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45241529/