从sessionStorage JavaScript中删除值

Delete value from sessionStorage JavaScript

本文关键字:删除 JavaScript sessionStorage      更新时间:2023-09-26

我正在实现一些自定义计时器,用于计算指定的时间。若用户手动重新加载页面,该计时器需要存储计数的时间。这部分工作。但在指定的时间(在本例中为5秒)之后,用户需要重定向。

为此,我使用sessionStorage来保持当前计数的时间。但5秒钟后,我试图从会话存储中删除项目,但它不起作用!

我哪里搞错了?在我的情况下,如何从会话存储中删除项目?感谢

 var currentTime = sessionStorage.getItem("currentTime");
        if (currentTime == null) {
            currentTime = 0;
        }
        setInterval(function () {
            currentTime++;
            if (currentTime == 5) {
                sessionStorage.removeItem("currentTime");
                location.reload();
            }                
            sessionStorage.setItem('currentTime', currentTime);               
        }, 1000);

问题是location.reload()不会终止JavaScript的执行。因此,在该行运行之后,sessionStorage.setItem('currentTime', currentTime);仍在运行。要解决此问题,请将该行包装在if (currentTime == 5)的else语句中。