javascript - 创建一个 JavaScript cookie

标签 javascript jquery cookies

我正在尝试创建一个 cookie。我怀疑我的 cookie 没有正确保存或检索。我做错了什么?

我尝试了两种方法来保存这个 cookie:

  1. Cookie 在此函数中保存:

    function(config) {
        var config_copy = JSON.parse(JSON.stringify(config));
        setCookie('key',config_copy);
    }
    
  2. 使用 setCookie();

    function(config) {
        var config_copy = JSON.parse(JSON.stringify(config));
        setCookie();
    }
    

然后触发这个函数:

function setCookie(key,config_copy){
    document.cookie = key + "=" + config_copy;
    console.log("cookie saved");
    console.log(config_copy);
}

console.log(config_copy); 在控制台返回 undefined

如何将 config_copy 的值正确保存到 JavaScript cookie 中?

最佳答案

JSON.parse() 返回一个对象,而不是 JSON 字符串。您应该将 JSON 字符串放入 cookie,而不是 JSON.parse 的结果。

function saveConfig(config) {
    var config_copy = JSON.stringify(config);
    setCookie("key", config_copy);
}

否则,您只需将 cookie 设置为 [Object object]

关于javascript - 创建一个 JavaScript cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31862745/

相关文章:

javascript - 恢复到原始元素 ID

javascript - 如何在没有浏览器参与javascript的情况下从url下载文件

javascript - jquery 从特定表单获取所有输入

c# - 当我从子门户访问 ashx 时,为什么 DNN 会杀死我的身份验证 cookie?

http - Cookie在HTTP协议(protocol)中是如何传递的?

javascript - 防止闭包编译器在不使用括号表示法的情况下重命名属性

javascript - 如何下载带有由 JavaScript 创建的标签的网页的源代码?

jQuery 迭代 HTML5 表格

jquery - 单击链接时的下拉菜单

php - 使用 AngularJS 和 PHP 创建跨子域 cookie/session