每秒产生并打印递增的自然数1、2、3...,直到100为止,点击按钮暂停/继续

能暂停,但想不通如何继续,如何点击之后续着之前的值打印下去

btn.onclick = function () {
            if (this.innerText === "暂停") {
                clearInterval(id);
                this.innerText = "继续";
            } else {
                this.innerText = "暂停";
            }
            var num = 1;
            var id = setInterval(
                function () {
                    console.log(num);
                    num++;
                    if (num === 101) {
                        clearInterval(id);
                    }
                }, 1000
            )
        }

你题目的解答代码如下:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <title> 页面名称 </title>
</head>
<body>

    <button id="btn" type="button" >开始</button>

    <script type="text/javascript">
        var btn = document.getElementById("btn");
        var id;
        var num = 1;
        btn.onclick = function () {
            if (this.innerText === "暂停") {
                clearInterval(id);
                this.innerText = "继续";
            } else {
                this.innerText = "暂停";
                id = setInterval(
                    function () {
                        console.log(num);
                        num++;
                        if (num === 101) {
                            clearInterval(id);
                        }
                    }, 1000
                )
            }
        }
    </script>
</body>
</html>

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

把第八行的 var num = 1; 放到 btn.onclick 的外边,即放到第一行上

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632