![]() |
Удаление элемента ассоциативного массива.
Подскажите плиз.
Создан ассоциативный массив: Код AS3:
Код AS3:
Если можете поправить на предмет правильности удаления элементов из асс.массива - подскажите плз. |
Доброго времени суток. " = null " - неправильное решение, для удаления элемента массива есть "delete"
Код AS3:
|
Код AS3:
|
Спасибо, буду разбираться.
Добавлено через 13 минут И ещё прошу уточнить, в том случае если речь идёт о многомерной структуре данных заложенной в ассоциативный массив. Если элементом ассоциативного массива assArr является многомерный массив assArr["myarray3"] (в моём случае трёхмерный) то если написать: Код AS3:
|
Chum,а вы сами попробуйте, это же дело трех минут.
|
Есть вещи которые разным людям даются по-разному. Есть области знаний которые требуют точной уверенности в том что результат именно такой и никакой другой и в этом случае я например, предпочитаю спросить.
|
Цитата:
|
Тогда как я понял в моём случае необходимо взять элемент ассоциативного массива, а это трёхмерный массив (класс Array) и обнулить(=null) тройным циклом каждый элемент массива, а уж затем обнулить или удалить (delete) и сам массив, элемент ассоциативного масива, как-то так:
Код AS3:
Вопрос на самом деле не совсем праздный, может лучше так? Код AS3:
|
Кольцевые ссылки GC прекрасно удаляет сам. Нет необходимости бегать по каждому вложенному элементу. Достаточно отрубить только корень и дерево свалится само.
|
Пожалуйста, поконкретнее если можно, этого достаточно:
Код AS3:
|
Если в элементах содержатся какие-то DisplayObject'ы, которые добавлены на сцену, то ссылки на них буду утеряны. Вернее ссылки останутся только в дисплей листе, откуда придется их выкорчевывать через removeChild()/removeChildAt(). Для всего остального — GC, когда ему приспичит, сам пройдется по массиву, на который уже нет ссылок в программе и удалит все его содержимое.
|
В элементах могут содержаться DisplayObject'ы, но я в данном случае не веду речь об удалении их со сцены, removeChild-ом будет заниматься другой механизм, речь идёт только об удалении элемента ассоциативного массива со всеми его ссылками на различные объекты.
Добавлено через 2 минуты Что бы было более понятно - речь идёт о переименовании слоёв. |
Цитата:
В любом случае я уже все рассказал. GC сам удалит все кольцевые ссылки в отрубленном через delete массиве. |
КорДум, спасибо. Понял.
|
| Часовой пояс GMT +4, время: 15:10. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.