从sessionStorage JavaScript中删除值

时间:2014-11-04 20:06:01

标签: javascript

我正在实现一些自定义计时器,用于计算指定的时间。如果用户手动重新加载页面,该计时器需要存储计时时间。这部分有效。但是在指定时间(在这种情况下为5秒)之后,用户需要被重定向。

为此,我使用sessionStorage来保持当前计算的时间。但是在5秒之后我试图从sessionStorage中删除项目并且它不起作用!

我犯了错误?在我的情况下如何从sessionStorage中删除项目? 感谢

 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);

1 个答案:

答案 0 :(得分:1)

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