본문 바로가기

Development/WebApp

[Flex] String타입 "false"를 Boolean타입으로 변환하는 방법

var booleanValue :Boolean = Boolean( "false" );
// booleanValue is true


String타입으로 된 "true"와 비교해서 사용해야 한다. 위와 같이 작성하면 false가 아니라 true 값이 나온다.이유는 간단하다. String값에 데이터가 있었기 때문. 없었다면 false 값이 되었을 것이다. 그래서 String타입 문자 그대로 Boolean으로 변환하고 싶다면 다음과 같이 하면 된다.


public static const TRUE :String = "true";
var booleanValue :Boolean = "false" == TRUE ? true : false;
// booleanValue is false


참 쉽죠잉? 매번 if 문을 작성하긴 귀찮으니 다음 코드처럼 함수화하여 사용하면 좋다.


public static function valueOf( value :String ) :Boolean {
	var booleanValue : Boolean = false;
	if( value != null && value != "" ) {
		booleanValue = TRUE == StringUtil.trim( value ).toLowerCase();
	}
	return booleanValue;
}