Javascript对象中未定义的值

Undefined values in Javascript object

本文关键字:未定义 对象 Javascript      更新时间:2023-09-26

所以我试图将一组对象存储到localStorage中,如下所示:-

EDIT:以下是在循环中调用的函数的一部分。

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工具调试这个问题,并在各个地方插入警报来监控变量的状态;仍然未定义。

你已经做了一个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'));