본문 바로가기

Flash/ActionScript 3.0

[MissFlash의 ActionScript 3.0] 1.9 Performing Actions Conditionally

* 본 포스트는 "Joey Lott의 ActionScript 3.0 Cookbook"의 내용을 정리, 가공한 것입니다.
* 본 포스트를 퍼가실 때는 상단에 아래와 같이 원본출처를 명시해 주세요! ^^
원본 : http://blog.missflash.com/
출처 : MissFlash.com, http ://www.missflash.com/
* 포스트의 내용중 일부가 추가/수정될 수 있으므로 최신 내용을 접하고 싶으신 분은 원본글을 이용하시기 바랍니다.

1.9 Performing Actions Conditionally

Problem
조건이 참일 때 어떤 액션을 취하고 싶을 때

Solution
if나 switch문을 이용합니다.

Discussion
ActionScript의 조건문으로는 if, switch 그리고, ternary conditional operator(? :)가 있습니다.

1) if문
- 일반적으로 가장 많이 사용됩니다.

- 조건을 Double equal sign(==)을 통해 확인합니다.

- 활용예
var myName:String = "MissFlash";
if(myName == "MissFlash"){
  trace("My name is " + myName + ".");
}


2) switch문
- 체크해야 할 조건들이 많을 때 용이합니다.

- 구성요소
① switch 키워드
② test expression
③ switch 문 body : case / default 키워드, case expression, case body

- 일반적인 형태
switch(testExpression){
  case caseExpression:
  // case body
  case caseExpression:
  // case body
  default:
  // case body
}

- 일반적으로 조건에 맞는 case를 실행하고 난 후 switch문을 정상적으로 종료하기 위해, 각 case body의 끝에 break 문을 삽입해야 합니다.

- 몇 개의 matching case에 동일한 액션을 취할 수 있습니다.

- 활용예
switch(countryName){
  case "Korea":
  case "Japan":
  case "China":
    trace("You chose Asia!");
    break;
  case "England":
  case "France":
  case "Swiss":
    trace("You chose Europe!");
    break;
  default:
    trace("Try again!");
}


3) ternary conditional operator문
- 조건의 확인과 그에 따른 액션이 한 줄로 표현가능할 때 유용합니다.

- 일반적인 형태
varName = (conditional expression) ? valueIfTrue : valueIfFalse;

- 활용예
var myName:String = "MissFlash";
var nameCheck:String;
nameCheck = (myName == "MissFlash") ? "You are MissFlash!" : "Who are you?";
trace(nameCheck);