[질문]조건문에 함수가 들어가는게 이해가 안갑니다.
단순드립
function preMoveChk (x, y){
plusMove (x, y);
var chk:Boolean;
for (var prop in vg){
if (vg[prop].hitTest (_root.bgArea)){
chk = true;
}else{
minusMove (x, y);
return false;
}
}
minusMove (x, y);
return chk;
}
function autoMove (){
var x = 0;
var y = 15;
//여기 if 문에 함수가 들어가서 이해가 안갑니다. 아시는 분 해석 좀...
if (preMoveChk (x, y)){
this._x += x;
this._y += y;
}
}
autoMove();
-
이루리라
와우~ 멋지십니다. 이제 이해 완벽히 쏙쏙 갑니다. 님들 완전 감사해용~
-
Loseless
함수 리턴값이 boolean 이라서 가능 한거 아닐까요 ㅋ
-
가시내
return chk; --요줄 보이시죠? return이 있으면 그 함수가 chk값을 반환한다는 뜻입니다.
chk의 타입이 먼가요? true나 false죠?
true나 false는 if문에 넣을수 있죠? 그래서 가능해요 -
연블랙
조건문은 여러가지 동작중에서 원하는 특정동작을 발동시키기 위해 사용합니다.
그리고 if()이 안에는 어떤 동작에 대한 실행할것이냐 아니면 걍 넘어갈것이냐 두가지 경우중에 하나를 선택해야합니다. preMoveChk (x, y)함수의 리턴값을 보면 Boolean형입니다. Boolean형이 먼지는 아시죠?
참이냐 거짓이냐 두가지 값을 가지고 있는 데이터타입니다. 참이면 동작 실행, 거짓이면 통과..... -
히메
조건문안에는 함수뿐만 아니라 매크로(define..), 그냥 정수값등 모든것들이 들어갈수 있습니다.
-
아유미
윗분들 말씀처럼
preMoveChk (x, y ) 함수가 참,거짓을 반환하기때문에 if문에서 사용할수 있습니다. -
핑크펄
preMoveChk 함수 끝에 return 은 preMoveChk 를 실행시켰을때 chk를 돌려 주란 뜻입니다.
var a = preMoveChk(0, 0)
trace(a)
해보시면 이해가 쉬울것 같네요 -
이리온
질문에서..if문에 함수가 들어간게 이해가 안되신다는건지..if문 조건이 참이 되는게 이해가 안된다는건지 정확히 모르겠네요..;;
-
LetMeGo
preMoveChk (x, y)의 리턴값이 true또는 false의 불린값이므로 참, 거짓여부에 따라 행동하는 조건문에 들어갈수 있습니다.
-
든해
preMoveChk을 실행해서..chk 가 true 면..autoMove를 실행하겠네요....