ActionScript 3.0/팁 & 노하우

[AS3] Flash에서 Javascript 변수 가져오기 (without Javascript)

우야꼬  2008. 8. 19. 15:36
Flash에서 Javascript의 변수를 가져오기 위한 방법은 보통 아래와 같습니다.

// in Javascript
<script type="text/javascript">
var str = "string value";

function getStr()
{
    return str;
}
</script>

// in Flash
var str: String = ExternalInterface.call( "getStr" );

함수 일일이 만들기 귀찮죠.

아래와 같이 써봅시다.

// in Javascript
<script type="text/javascript">
var str = "string value";
</script>

// in Flash
var str: String = ExternalInterface.call( "eval", "str" );

어때요?

참 쉽죠?

그리고 이거 아세요?

숫자나 변수, 배열뿐만 아니라 Object도 전달된다는 사실?

// in Javascript
<script type="text/javascript">
var flashObject = {};
flashObject.a = "property a";
flashObject.b = 100;
flashObject.c = [ "c1", "c2", "c3" ];
</script>

// in Flash
var obj: Object = ExternalInterface.call( "eval", "flashObject" );

var prop: String;
for( prop in obj )
    trace( prop + " : " + obj[ prop ] );
/*
c : c1,c2,c3
b : 100
a : property a
*/


참 쉽죠?