在数组javascript中存储具有属性的对象

在数组javascript中存储具有属性的对象,javascript,arrays,object,Javascript,Arrays,Object,进入数组reserve[] 使用reserve.push(输入) 提示“无法读取null的属性“push”, 但是当我尝试alert(input)时,它很好地打印出了整个对象,我不知道问题出在哪里。 我的预期输出如下: input={ name:name, date:date, venue:venue, time:venue }; 这样以后我就可以用reserve(0)来比较和检查新的用户输入。name==name你只需要实例化你的

进入数组
reserve[]
使用
reserve.push(输入)
提示“无法读取null的属性“push”, 但是当我尝试
alert(input)
时,它很好地打印出了整个对象,我不知道问题出在哪里。 我的预期输出如下:

input={ name:name,
        date:date,
        venue:venue,
        time:venue
       };

这样以后我就可以用
reserve(0)来比较和检查新的用户输入。name==name

你只需要实例化你的
数组

你的错误是错误的原因

reserve(0)={name:name,
            date:date,
            venue:venue,
            time:time}
不要返回
数组
,您必须在
推送
项目之前进行测试

它在实例化之后工作

var name=“name”;
var date=“10/10/2016”;
var type=“text”;
风险准备金;
变量输入={
姓名:姓名,,
日期:日期:,
类型:类型
};
//测试数组是否存在以及是否为数组
reserve=(x的类型!=“未定义”&&reserve-instanceof-Array)?储备金:[]
预留、推送(输入);

log(reserve)
您只需实例化
数组即可

你的错误是错误的原因

reserve(0)={name:name,
            date:date,
            venue:venue,
            time:time}
不要返回
数组
,您必须在
推送
项目之前进行测试

它在实例化之后工作

var name=“name”;
var date=“10/10/2016”;
var type=“text”;
风险准备金;
变量输入={
姓名:姓名,,
日期:日期:,
类型:类型
};
//测试数组是否存在以及是否为数组
reserve=(x的类型!=“未定义”&&reserve-instanceof-Array)?储备金:[]
预留、推送(输入);

log(reserve)
您只需实例化您的数组…检查
localStorage.getItem(“arrayCache”)
实际返回一个值确保添加
reserve=[]在您的
保留之前。按(输入)
。由于您在
if
主体中,您知道
reserve
要么是
null
要么是
undefined
,因此您需要先将其设置为数组,然后才能
推送到它。
reserve=JSON.parse(localStorage.getItem(“arrayCache”)|只需实例化数组…检查
localStorage.getItem(“arrayCache”)
实际返回一个值确保添加
reserve=[]在您的
保留之前。按(输入)
。由于您在
if
主体中,您知道
reserve
要么是
null
要么是
undefined
,因此您需要先将其设置为数组,然后才能
推送到它。
reserve=JSON.parse(localStorage.getItem(“arrayCache”)|
注意,这很可能发生在
if
的主体内部。OP检查
reserve
是否为
null
undefined
,然后尝试将其推入。是的,这就是出现此错误时他必须实例化数组的原因。我只是想澄清一下。我不太确定OP是否理解为什么他必须实例化它。我仍然需要实例化数组?但是我希望输入来自document.getElementById(id).value.btw,感谢您的帮助,我还是javascript新手:(请注意,这很可能发生在
if
的主体内部。OP检查
reserve
是否为
null
未定义
,但随后尝试将其推入。是的,这就是出现此错误时他必须实例化数组的原因。我只是想澄清一下。我不太确定OP是否理解h的原因。)e必须实例化它。我仍然需要实例化数组?但我希望输入来自document.getElementById(id).value.btw,谢谢您的帮助,我还是javascript新手:(
reserve = localStorage.getItem("arrayCache");
reserve = JSON.parse(reserve);