Мой setInterval генерирует ошибку «2VM6: 1 Uncaught ReferenceError: таймер не определен в <anonymous>: 1: 1» - PullRequest
0 голосов
/ 06 апреля 2020

Я пытаюсь отобразить время (часы, минуты, секунды) в мини-калькуляторе, но получаю необычное сообщение об ошибке:

{2VM6: 1 Uncaught ReferenceError: таймер не определен в : 1: 1}.

Я думаю, что метод setInterval вызывает эту ошибку, мой скрипт ниже, я считаю, что ошибка оттуда:

 ```<!DOCTYPE html>
    <html lang="en">
    <head>
        <script src="script.js"></script>
        <link rel="stylesheet"  href="style.css"/>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <div id="container">
            <div id="time">chinaza</div>
            <div class="item_1" id="display_container"></div>
            <div class="item_1" id="result"></div>
            <div class="item_1" id="key_container">
                <table>
                    <tr>
                        <td>7</td>
                        <td>8</td>
                        <td>9</td>
                        <td>del</td>
                    </tr>
                    <tr>
                        <td>4</td>
                        <td>5</td>
                        <td>6</td>
                        <td>/</td>
                    </tr>
                    <tr>
                        <td>1</td>
                        <td>2</td>
                        <td>3</td>
                        <td>-</td>
                    </tr>
                    <tr>
                        <td>.</td>
                        <td>0</td>
                        <td>=</td>
                        <td>+</td>
                    </tr>
                </table>
            </div>
        </div>
    </body>
    </html>
    window.onload=function(){
        function timer(){
            let time =new Date();
            let hour=time.getHours();
            let min=time.getMinutes();
            let sec=time.getSeconds();
            console.log(hour,min,sec);
            document.getElementById("time").innerHTML=sec;
        }
        setInterval("timer()",1000);
    }```

1 Ответ

0 голосов
/ 06 апреля 2020

Вы не хотите передавать таймер в кавычках. Вот рабочая ручка, которую вы должны использовать:

window.onload=function(){
  function timer(){
    let time =new Date();
    let hour=time.getHours();
    let min=time.getMinutes();
    let sec=time.getSeconds();
    document.getElementById("time").innerHTML=sec;
  }
  window.setInterval(function() { timer() },1000);
};
<div id="time"></div>
...