关于javascript 操作cookie遇到的问题?

var CookieUtil = {
    // 读取cookie的值
    get : function(name){
        var cookieName = encodeURIComponent(name) + "=",
            cookieStart = document.cookie.indexOf(cookieName),
            cookieValue = null;
        // 如果cookieStart > -1 即已经找到 
        if(cookieStart > -1){
            var cookieEnd = document.cookie.indexOf(";",cookieStart);
            // 即没有找到结尾分号;可能是最后一条
            if(cookieEnd == -1){
                var cookieEnd = document.cookie.length;
            }
            cookieValue = decodeURIComponent(document.cookie.substring(cookieStart+cookieName.length,cookieEnd));
        }
        return cookieValue;
    },
    // 写入cookie的值
    set : function(name,value){
        // 拼接
        var cookieText = encodeURIComponent(name) + "=" + encodeURIComponent(value);
        document.cookie = cookieText;
    }

}

HTML部分

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script type="text/javascript" src="cookieUtil.js"></script>
</head>
<body>
    <script type="text/javascript">
        CookieUtil.set("name","yang");
        CookieUtil.set("age",18);
    </script>
</body>
</html>

使用CookieUtil.get("name"),会输出null,在谷歌的控制台上输入 console.log(document.cookie),也会输出空字符串,在set方法里我如果加alert(cookieText)是能正常弹出数据的,可是读取的时候就是空的,这是为什么呢?

阅读 2.9k
1 个回答

chrome不支持本地文件设置cookie
本地启个服务器访问在访问就可以看到了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题