【问题标题】:JSON Parse error: Unable to parse JSON stringJSON 解析错误:无法解析 JSON 字符串
【发布时间】:2013-05-10 09:36:44
【问题描述】:

我正在尝试将一些数据发送到 JSON 对象,然后发送到 cookie。但是当我尝试解析它时出现此错误:“SyntaxError: JSON Parse error: Unable to parse JSON string”。

这是导致错误的代码:

function checkCookies() {
    var message;

    if(document.cookie) {
        var iCookie = document.cookie.split('=');
        console.log(iCookie);
        var iObject = JSON.parse(iCookie[1]);

        message = "Cookie finnes: " + iObject.word;
    } else {
        message = "Fant ikke cookie.";
    }
    $("#sectSavedWord").html(message);
}

这是我试图创建 cookie 的代码:

$("#btnSaveWords").click(function(){
        var finalWord = "";

        for (var i = 0; i < word.length; i++) {
            finalWord += word[i];
        }

        document.cookie = "info=" + JSON.stringify({"word": finalWord}) + ";expires=" + getExpireDate(7);
        document.location = "oppgave1_2.html";
    });

任何人都可以在这里指出正确的方向吗?我已经尝试让这个工作好几天了。我之前使用过这种语法(或者至少是非常相似的),并且它更早地工作过..

【问题讨论】:

  • finalWord 应该是一个字符串,而不是一个数组。它从 word-array 中获取其内容,该 word-array 基于另一个包含字母表的数组。 (var alphabet = ["a","b","c".... 等等..).. 所以样本数据可能是:“嘿!”或“LOREM IPSUM”。
  • 你确定没有设置其他cookies!你真的需要添加其他逻辑!

标签: javascript arrays json parse-error


【解决方案1】:

您的拆分值iCookie[1] 将在字符串中包含;expires

document.cookie = "info=" + JSON.stringify({"word": finalWord}) + ";expires=" + getExpireDate(7);

这是解析中的causig问题

    var iCookie = document.cookie.split('=');
    console.log(iCookie);
    var iObject = JSON.parse(iCookie[1]);

【讨论】:

猜你喜欢
  • 2020-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-09-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多