js获取cookie

纯js使用cookie时首先要在<script></script>中写入使用cookie的方法,或者将方法另存在指定的js文件中,使用外链引入,设置cookie的方法有三个值,第一个为cookie的名称,第二个为cookie的值,第三个为过期时间,如果不填写过期时间就默认为关闭浏览器后失效。

//设置cookie的方法:
function setCookie(c_name, value, expiredays) {
    var exdate = new Date()
    exdate.setDate(exdate.getDate() + expiredays)
    document.cookie = c_name + "=" + escape(value)
            + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString())
}
//获取cookie的方法:
function getCookie(c_name) {
    if (document.cookie.length > 0) {
        c_start = document.cookie.indexOf(c_name + "=");
        if (c_start != -1) {
            c_start = c_start + c_name.length + 1;
            c_end = document.cookie.indexOf(";", c_start);
            if (c_end == -1) {
                c_end = document.cookie.length;
            }
            return unescape(document.cookie.substring(c_start, c_end));
        }
    }
    return "";
}
//清除cookie的方法
function clearCookie(c_name) {
    setCookie(c_name, "", -1);
}

案例代码

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <script>
        //设置cookie的方法:
        function setCookie(c_name, value, expiredays) { //设置cookie有三个值("cookie名称","cookie的值","过期时间")
            var exdate = new Date()
            exdate.setDate(exdate.getDate() + expiredays)
            document.cookie = c_name + "=" + escape(value)
                    + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString())
        }
        //获取cookie的方法:
        function getCookie(c_name) {
            if (document.cookie.length > 0) {
                c_start = document.cookie.indexOf(c_name + "=");
                if (c_start != -1) {
                    c_start = c_start + c_name.length + 1;
                    c_end = document.cookie.indexOf(";", c_start);
                    if (c_end == -1) {
                        c_end = document.cookie.length;
                    }
                    return unescape(document.cookie.substring(c_start, c_end));
                }
            }
            return "";
        }
        setCookie("mycookie","cookieName");//设置一个cookie
        alert(getCookie("mycookie"));//弹出cookie的值
    </script>
    <title></title>
</head>
<body>
</body>
</html>  

效果图

image.png

如果想要清除cookie,重写一次设置cookie将值写为空值即可,例如 setCookie("mycookie","");
效果图

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容