Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   убить всех! (http://www.flasher.ru/forum/showthread.php?t=74874)

buka2 30.01.2006 18:30

убить всех!
 
Как одним махом грохнуть всё переменные на всех уровнях?

Fl00r 30.01.2006 18:49

Код:

for(var i in _root) {
  delete _root[i]
}


buka2 30.01.2006 20:19

А по всем левелам можно?

Fl00r 30.01.2006 20:22

Что ты имеешь ввиду?
Убить переменные в подгружаемых свфках?
Или ты про слои на монтажной линейке говоришь?
Или про Depth?

Король 30.01.2006 20:27

какие могут быть переменные на depth
вместо _root в примере Floor-а подставляешь какой тебе угодно мувик- подгруженный, рут, мув на сцене - и в нем все переменные убиваются

Fl00r 30.01.2006 20:29

Король,
это была следующая моя мысль.
Если на depth, или на слое в таймлайне (что опосредовано также является свойством depth) то все переменные этой области лежат в _root (_level0);
Подгружаемые же внешние файлы ложаться в _level1, _level2 ... и очищаются тем же циклом =) только вместо _root - соответствующий _level

silin 30.01.2006 20:38

трудно предположить, что тебе нужно снести ВСЁ , а именно это сделает for(var i in _root) delete _root[i]; для рута..
кроме того если переменные во вложенных объектах надо рекурсивно их просмотреть, да не удалить лишнего..
я бы хранил переменные, которые надо обнулять, в каком нибудь _global.obj, удобнее имхо, все под контролем: for(var i in _global.obj) delete _global.obj[i] удалит только то что надо..
зы: если надо просто переинициализировать мувик, то можно
_root.loadMovie(_root._url)


Часовой пояс GMT +4, время: 15:51.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.