2013-05-15 2 views
1

Я пытаюсь отправить некоторые данные в объект JSON, а затем в файл cookie. Но я получаю эту ошибку, когда я пытаюсь ее разобрать: «SyntaxError: JSON Ошибка синтаксического анализа: невозможно разобрать строку JSON».Ошибка JSON Parse: невозможно разобрать строку JSON

Вот код вызывает ошибку:

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); 
} 

И это код, в котором я пытаюсь создать печенье:

$("#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"; 
    }); 

Может кто-нибудь мне точку в правильном направлении здесь ? Я попытался заставить это работать уже несколько дней. Я использовал этот синтаксис (или, по крайней мере что-то очень похожее) раньше, и он работал раньше ..

+0

finalWord должен быть строкой, а не массивом. Он получает свой контент из массива слов, который основан на другом массиве, содержащем алфавит. (var alphabet = ["a", "b", "c" .... и т. д.). Таким образом, данные примера могут быть: «HEY!» или "LOREM IPSUM". –

+0

И вы уверены, что нет других печенья! Вам действительно нужно добавить другую логику! – epascarello

ответ

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]); 
+1

AKA, найдите метод getCookie и используйте его для получения значения. MDN - хорошее место для поиска: https://developer.mozilla.org/en-US/docs/DOM/document.cookie – epascarello

Смежные вопросы