2011-01-31 47 views
1

我有一个名为insurances的数组。我这个数组像这样一组数据:javascript数组深度值

var insurances = {}; 

insurances[0] = {} 
insurances[0]['id'] = 0; 

等等

后来我想这样做是为了改变ID:

insurances[index]['id'] = insuranceId; 

指数= 0和insuranceId = 1000;

不知何故,它不设置的价值(我得到未定义)。我究竟做错了什么?

感谢您的帮助。

+1

你能发布确切的代码来重现问题吗?这[代码](http://jsfiddle.net/qu7dX/)效果不错... – gor 2011-01-31 15:02:10

+0

你可以发布你设置insuranceId值的代码段吗?如果变量存在,但没有给出值,则会得到'未定义'而非您期望的值。 – 2011-01-31 15:05:46

回答

0

它的工作原理:http://jsfiddle.net/pNAwk/

var insurances = {}; 

insurances[0] = {} 
insurances[0]['id'] = 0; 

insurances[0]['id'] = 1000; 

alert(insurances[0]['id']); // alerts 1000 

请注意,如果你打算使用索引的属性名(0,1,2,...),然后字面数组是比较合适的:

var insurances = [];