Дано
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 не робить те, що я хочу;
delete myHash['key2']
просто дає мені це:
var myHash = new Array();
myHash['key1'] = { Name: 'Object 1' };
myhash['key2'] = null;
myHash['key3'] = { Name: 'Object 3' };
єдині документи, в яких я можу знайти splice
і slice
мати справу з цілочисельними індексаторами, яких у мене немає.
Редагувати: Я також не знаю, що 'key2' обов'язково знаходиться в позиції [1]
ОНОВЛЕННЯ
Добре, невеликий червоний оселедець, видалення, здається, робить те, що я хочу, на поверхні, однак, я використовую json2.js, щоб розв’язати мій об’єкт на json для повернення назад на сервер,
після видалення myHash серіалізується як:
[ { Name: 'Object 1' }, null, { Name: 'Object 3' } ]
Це помилка в json2.js? чи це щось я роблю не так із видаленням?
Дякую