removeChild 는 완전한 삭제가 아니다.
ActionScript 3 2007. 6. 8. 17:50 |뭐 아는 사람은 다 아는 거겠지만... removeChild 메소드 사용시 자주 나올 수 있는 실수를 짚고 넘어가자면...
var sp:Sprite = new Sprite();
addChild(sp);
trace(sp); // [object Sprite]
removeChild(sp);
trace(sp); // [object Sprite]
sp = null;
trace(sp); // null;
위와 같이 removeChild 는 디스플레이 오브젝트에서 빼낸 것 뿐이지 sp라는 Sprite 객체를 완전히 삭제해 버린 것이 아니다.
다음의 코드도 보자
var sp:Sprite = new Sprite();
addChild(sp);
trace(sp); // [object Sprite]
sp = null;
trace(sp); // null;
sp = Sprite(getChildAt(0));
trace(sp); // [object Sprite]
이제 감이 좀 올 것이다.
안 오면 말고...ㅡ.,ㅡa
'ActionScript 3' 카테고리의 다른 글
for(var i:uint 아무 생각 없이 쓰다가는 컴퓨터 다운된다... (0) | 2007.06.12 |
---|---|
as3으로 기본 메뉴 만들기 (0) | 2007.06.11 |
addChild 는 한개의 오브젝트에만 가능하다 (0) | 2007.06.04 |
navigateToURL target 의 기본값은 _blank 다 (0) | 2007.06.01 |
buttonMode (0) | 2007.05.28 |