я следующая функция, которая должна удалить объект в объект под следующим идентификатором:Javascript удалить объект из объекта
contactDeleteCounter++;
console.log(orderContactIds);
console.log(deletePosition);
console.log(orderContactIds[deletePosition]);
delete orderContactIds.deletePosition;
console.log(orderContactIds.deletePosition);
console.log(orderContactIds);
console.log(deletePosition);
Проблема в том, что я все прекрасно работает в Chrome, но Firebug в Firefoxshows меня следующий вывод:
Object { 0={...}, 1={...}, 2={...}}
2
Object { id= "20" , type= "1" }
undefined
Object { 0={...}, 1={...}, 2={...}}
2
Как вы видите, атрибут не определен, но когда я смотрю в объект, он все еще там ...?
orderContactIds является глобальным объектом, что мне нужно все время, как я могу удалить объект с ID = 2? Не в ссылке, а в глобальной ценности? NB !: Этот код работает в Chrome btw !? – ekussberg
, если вам действительно нужно удалить метод, свойство, объект в объекте, попробуйте сделать новый объект, преобразованный в массив (если он работает для вас), и там вы сможете лучше управлять значениями. Всегда используйте массивы вместо объектов, когда вам нужно манипулировать содержимым массива. Поскольку массив представляет собой не что иное, как объект js, он по-прежнему имеет несколько методов, которые вы не можете использовать для объектов. Надеюсь, что это помогло ... –