Неопределенные значения в объекте Javascript - PullRequest
0 голосов
/ 24 января 2012

Итак, я пытаюсь сохранить массив объектов в localStorage следующим образом: -

РЕДАКТИРОВАТЬ: Следующее является частью функции, которая вызывается в цикле.

c = [{"name":nameDOM.value,"add":+addDOM.value,"town":townDOM.value,"post":postalDOM.value,"mob":mobDOM.value}];
cData = cData.concat(c);
localStorage.setItem('cData', cData);

Однако после обновления страницы, когда я пытаюсь получить доступ к данным из объектов, она, по-видимому, не определена. Доступ к данным из объектов возможен до обновления.

Я обращаюсь к данным следующим образом: -

//Table code omitted.
var text = document.createTextNode(""+cData[i].name+", "+cData[i].add+", "+cData[i].town+", "+cData[i].post+", "+cData[i].mob+"");

Я пытался отладить проблему, используя инструменты Chromes Javascript, а также вставляя оповещения в различные места, чтобы отслеживать состояние переменных; все еще не определено.

1 Ответ

0 голосов
/ 24 января 2012

Вы сделали oopsies.Попробуйте:

c = [{"name":nameDOM.value,"add":+addDOM.value,"town":townDOM.value,"post":postalDOM.value,"mob":mobDOM.value}];
cData = cData.concat(c);
localStorage.setItem('cData', JSON.stringify(cData));

Они отличаются тем, что вы превращаете ваш массив объектов в строку json, которую позже можно проанализировать вашим кодом, используя:

eval(localStorage.getItem('cData'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...