Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我的JS时钟不带日期方法don';行不通_Javascript - Fatal编程技术网

Javascript 我的JS时钟不带日期方法don';行不通

Javascript 我的JS时钟不带日期方法don';行不通,javascript,Javascript,代码如下。我试着用这种方法制作时钟,但没有使用“日期”。 基本上,我认为逻辑是正确的,但可能语法中有错误。 输出仅为1。没有任何动作。我希望输出为-0:0:0 谢谢你的帮助 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale

代码如下。我试着用这种方法制作时钟,但没有使用“日期”。 基本上,我认为逻辑是正确的,但可能语法中有错误。 输出仅为1。没有任何动作。我希望输出为-0:0:0 谢谢你的帮助

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>on submit</title>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>

</head>

<body>
    <div id="time"></div>
    <script src="script.js"></script>
</body>

</html>

如果将调用setInterval的结果分配给变量-myVar,则会收到一个整数,该整数是该特定间隔的唯一id-myTimer函数将返回的实际时间

因此,与其从myTimer函数返回结果,不如在其中设置time元素的innerHTML

var interval = setInterval(myTimer, 1000);

function myTimer() {
    var sec = 0;
    var min = 0;
    var hr = 0;
    sec++;
    if(sec==60) {
        min++;
        sec=0;
    }

    if(min==60)
    {
        min = 0;
        hr++;
    }
    document.getElementById("time").innerHTML=hr+":"+min+":"+sec;
}
作为旁注:您的时间将始终为0,因为每次调用都要将myTimer中的变量sec重置为0。因此,将sec、min和hr的定义放在函数之外

下面是一个示例-只需单击“运行代码段”:

var interval=setInterval(myTimer,1000);
var-sec=0;
var min=0;
var-hr=0;
函数myTimer(){
sec++;
如果(秒=60){
min++;
秒=0;
}
如果(最小==60){
最小值=0;
hr++;
}
document.getElementById(“时间”).innerHTML=hr+“:“+min+”:“+sec;
}

如果您将调用setInterval的结果分配给变量-myVar在您的情况下-您会收到一个整数,它是该特定间隔的唯一id-而不是myTimer函数预期返回的实际时间

因此,与其从myTimer函数返回结果,不如在其中设置time元素的innerHTML

var interval = setInterval(myTimer, 1000);

function myTimer() {
    var sec = 0;
    var min = 0;
    var hr = 0;
    sec++;
    if(sec==60) {
        min++;
        sec=0;
    }

    if(min==60)
    {
        min = 0;
        hr++;
    }
    document.getElementById("time").innerHTML=hr+":"+min+":"+sec;
}
作为旁注:您的时间将始终为0,因为每次调用都要将myTimer中的变量sec重置为0。因此,将sec、min和hr的定义放在函数之外

下面是一个示例-只需单击“运行代码段”:

var interval=setInterval(myTimer,1000);
var-sec=0;
var min=0;
var-hr=0;
函数myTimer(){
sec++;
如果(秒=60){
min++;
秒=0;
}
如果(最小==60){
最小值=0;
hr++;
}
document.getElementById(“时间”).innerHTML=hr+“:“+min+”:“+sec;
}

嘿,我明白你说的话。你说得对,那是我的错误。但它仍然不起作用。输出是0:0:1,它根本没有移动。我编辑了上面的答案,因为我发现了另一个小错误。嗯,我明白了,谢谢!!!这是一项工作,而且很酷。格力阿罗!!!没问题lir sim-很高兴我能帮上忙!=)嘿,我明白你说的话。你说得对,那是我的错误。但它仍然不起作用。输出是0:0:1,它根本没有移动。我编辑了上面的答案,因为我发现了另一个小错误。嗯,我明白了,谢谢!!!这是一项工作,而且很酷。格力阿罗!!!没问题lir sim-很高兴我能帮上忙!=)