最佳答案
给予
var myHash = new Array();
myHash['key1'] = { Name: 'Object 1' };
myHash['key2'] = { Name: 'Object 2' };
myHash['key3'] = { Name: 'Object 3' };
如何从散列中删除 key2
和 object 2
,使其最终处于与我所做的相同的状态:
var myHash = new Array();
myHash['key1'] = { Name: 'Object 1' };
myHash['key3'] = { Name: 'Object 3' };
删除不是我想要的;
delete myHash['key2']
给了我这个:
var myHash = new Array();
myHash['key1'] = { Name: 'Object 1' };
myhash['key2'] = null;
myHash['key3'] = { Name: 'Object 3' };
我能找到的关于 splice
和 slice
的唯一文档处理整数索引器,我没有。
编辑: 我也不知道“ key2”是否必须在位置[1]
更新
好吧,稍微转移一下注意力 delete 在表面上看起来确实是我想要的但是,我使用 json2.js 将我的对象字符串化为 json 以便推回到服务器,
删除之后,myHash 会被序列化为:
[ { Name: 'Object 1' }, null, { Name: 'Object 3' } ]
这是 json2.js 里的一个 bug 吗? 还是我删除的时候做错了什么?
谢谢