cookie,js检测是第一次加载照样革新

用于推断用户是不是初次进入网站

下面代码需要在服务器下调试

        function Cookie(key, value) {
            this.key = key;
            if (value != null) {
                this.value = escape(value);
            }
            this.expiresTime = null;
            this.domain = null;
            this.path = "/";
            this.secure = null;
        }
        Cookie.prototype.setValue = function(value) {
            this.value = escape(value);
        }
        Cookie.prototype.getValue = function() {
            return (this.value);
        }
        Cookie.prototype.setExpiresTime = function(time) {
            this.expiresTime = time;
        }
        Cookie.prototype.getExpiresTime = function() {
            return this.expiresTime;
        }
        Cookie.prototype.setDomain = function(domain) {
            this.domain = domain;
        }
        Cookie.prototype.getDomain = function() {
            return this.domain;
        }
        Cookie.prototype.setPath = function(path) {
            this.path = path;
        }
        Cookie.prototype.getPath = function() {
            return this.path;
        }
        Cookie.prototype.Write = function(v) {
            if (v != null) {
                this.setValue(v);
            }
            var ck = this.key + "=" + this.value;
            if (this.expiresTime != null) {
                try {
                    ck += ";expires=" + this.expiresTime.toUTCString();;
                } catch(err) {
                    console.log("expiresTime参数毛病");
                }
            }
            if (this.domain != null) {
                ck += ";domain=" + this.domain;
            }
            if (this.path != null) {
                ck += ";path=" + this.path;
            }
            if (this.secure != null) {
                ck += ";secure";
            }
            document.cookie = ck;
        }
        Cookie.prototype.Read = function() {
            try {
                var cks = document.cookie.split("; ");
                var i = 0;
                for (i = 0; i < cks.length; i++) {
                    var ck = cks[i];
                    var fields = ck.split("=");
                    if (fields[0] == this.key) {
                        this.value = fields[1];
                        return (this.value);
                    }
                }
                return null;
            } catch(err) {
                console.log("cookie读取毛病");
                return null;
            }
        }

用法

            var ck=new Cookie("HasLoaded"); 
            if(ck.Read()==null){
                console.log("第一次加载");
                var dd = new Date();
                dd = new Date(dd.getYear() + 1900, dd.getMonth(), dd.getDate());
                dd.setDate(dd.getDate() + 365);
                ck.setExpiresTime(dd);
                ck.Write("true"); 
            }
            else{
                console.log("革新");
            }
    原文作者:hugangqiang
    原文地址: https://segmentfault.com/a/1190000009207506
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞