问题描述
我有一个充满值的数组myArray []
我正在尝试将此数组放在哈希表中,以便从node.js服务器传递套接字。
我希望哈希表中的数组包含与myArray相同的所有信息。
var item = [
{ hashArray: [] }
];
for (var i = 0; i < myArray.length; i++) {
item.hashArray.push(myArray[i]);
}
我收到无法调用未定义推送的错误。
谢谢你的帮助!
编辑:非常感谢大家,我明白我做错了!
1楼
jensgram
3
已采纳
2011-03-31 07:38:36
您正在将item
创建为一个数组,在第零个索引上有一个对象:
var item = [
{ hashArray: [] }
];
让item
作为对象:
var item = {
hashArray: []
};
我假设这就是您想要的,除非item
打算是一个数组,在这种情况下,您应该push()
送到item[0]
:
item[0].hashArray.push(myArray[i]);
编辑
附带说明一下,为什么不只让hashArray
数组保存myArray
的值?
var item = {
hashArray: myArray
};
(出于好奇:)
2楼
scheffield
1
2011-03-31 07:39:54
您将包含hashArray
的对象包装在数组中。
要访问字段hashArray
您必须执行以下操作:
item[0].hashArray.push(...)
3楼
El'
1
2011-03-31 07:40:52
item[0].hashArray.push(myArray[i]);
要么
var item = { hashArray: [] };