为什么我的js脚本不显示计时器结果



我正在制作一个小时分秒的倒计时计时器,但我运行的脚本没有显示我在js脚本中写的结果,有人能纠正我的代码以便计时器工作吗?问题

let countdown = new date().getHours()
let $hours = document.getElementById('hours');
let $minutes = document.getElementById('minutes');
let $second = document.getElementById('second');
setInterval(function() {
var now = new hours();
var timeleft = (countdown - now) / 1000;
updateclock(timeleft);
}, 1000);
function updateclock(removebgtime) {
let hours = Math.floor((remainingtime % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
let minutes = Math.floor((remainingtime % (1000 * 60 * 60)) / (1000 * 60))
let second = Math.floor((remainingtime % (1000 * 60)) / 1000);
$hours.innerHTML = Number(hours);
$minutes.innerHTML = Number(minutes);
$second.innerHTML = Number(second);
}
function Number(Number) {
return Number < 10 ? "0" + Number : Number;
}

我在代码中发现的问题。

  • 您的countdown变量必须定义为let countdown = new Date().getHours()。那里有语法错误
  • setInterval函数的now变量中,如果计划获取当前小时时间,则应将其定义为var now = new Date().getHours();
  • 此外,您还必须重新定义Number函数,因为Number是javascript中的数据类型

伪代码。

let countdown = new Date().getHours()
let $hours = document.getElementById('hours');
let $minutes = document.getElementById('minutes');
let $second = document.getElementById('second');
setInterval(function() {
var now = new Date().getHours();
var timeleft = (countdown - now) / 1000;
updateclock(timeleft);
}, 1000);
function updateclock(remainingtime) {
let hours = Math.floor((remainingtime % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
let minutes = Math.floor((remainingtime % (1000 * 60 * 60)) / (1000 * 60))
let second = Math.floor((remainingtime % (1000 * 60)) / 1000);
$hours.innerHTML = parseToNumber(hours);
$minutes.innerHTML = parseToNumber(minutes);
$second.innerHTML = parseToNumber(second);
}
function parseToNumber(num) {
return num < 10 ? "0" + num : num;
}

我不能评论atm,因为我需要更多的声誉。但是为什么这是在你的代码段

var now = new hours();

为什么这在你的照片中:

var now = new Hours();

最新更新