js怎么得到上次的打开和关闭时间?

js怎么得到上次的打开和关闭时间?

var opentime = localStorage.getItem("opentime") || "之前没有打开过";

var cleartime = localStorage.getItem("cleartime") || "之前没有关闭过";

localStorage.setItem("opentime"new Date().toLocaleString());

window.onunload = function() {

    localStorage.setItem("cleartime"new Date().toLocaleString());

};

alert("上一次打开时间:"+opentime+"\n上一次关闭时间:"+cleartime);

var d=new Date();
    Date.prototype.toLocaleString=function (){
        d=this.getFullYear()+"年"+(this.getMonth()+1)+" 月" +this.getDate()+"日"+this.getHours()+"时"+this.getMinutes()+" 分"+this.getSeconds()+"秒";
    };
    localStorage.setItem("opentime",d.toLocaleString());
这样设置时间格式,为什么上次打开时间是undefined,关闭时间是可以实现的

onunload事件的兼容不是很好。。。不过换个资源代下载网思路,其实我们可以做个定时器嘛,嘿嘿。打开的时间很好办,关键在于这个关闭的时间。因为如今的浏览器,没有一个很好的能够统一的监听关闭的事件。

window.onload = function () {
      let lastOpenTime = localStorage.getItem("openTime") || "";
      let lastCloseTime = localStorage.getItem("currentTime") || "";
      document.body.innerHTML = "<div>上一次打开时 间:" + lastOpenTime + "</div><div>上一次关闭时 间:" + lastCloseTime + "</div>";
      localStorage.setItem("openTime", new Date().getTime());
      setInterval(function () {
        localStorage.setItem("currentTime", new Date().getTime());
      }, 100);
    }

这样子的效果更好哦~

Date.prototype.toLocaleString=function (){
    return this.getFullYear()+"年"+ (this.getMonth()+1)+"月" +this.getDate()+"日"+this.getHours()+" 时"+this.getMinutes()+"分"+this.getSeconds()+"秒";
};

存在前端localStarge中或存在数据库内。