[출처] ValueObject 프로퍼티 찾기 for in|작성자 서기
Flex에서 dynamic Object의 property를 찾기는 샘플도 많고 많이 나왔다..
for in 을 쓰라고...
무엇인가 하니
var obj:Object = {name="장윤석", age="19"};
for (var name:String in obj){
trace(obj[name]);
}
이라고 하면
콘솔창엔 차례로
name
age
가 나올것이다
for..in | Iterates over the dynamic
properties of an object or elements in an array and executes
statement for each property or
element. |
설명서에도 dynamic properties 를 찾는다고 했으니까
하지만 Flex에서는 java 와 같이 ValueObject를 쓸때가 많다
Class TestVO{
public var name:String;
public var age:String;
}
이런 클래스..(보통 RemoteObject에서 나온 VO 값을 Flex에서 사용하기 위해 많이 쓴다)
저 property를 모를때...
어떻게 찾아야 할까? 이런것들은 많이 나와있지 않다..
똑같이
var vo:TestVO = new TestVO();
vo.name = "장윤석";
vo.age = 19"
for (var name:String in vo){
trace(name);
}
을 하면 될까?
안된다
for 문 안에도 안들어 갈것이다..(심심하신 분들은 Test 해보세요~)
그럼 저 properties을 어떻게 찾아야 하나....
방법은 있다..
var vo:TestVO = new TestVO();
vo.name = "장윤석";
vo.age = 19";
var obj = ObjectUtil.getClassInfo(vo);
for each(var name:String in obj.properties){
trace(name);
}
이러면 끝
getClassInfo()라는 것이 해당 클래스의 정보를 넘겨준다
name,alias,properties 등등
이것때메 어제 야근 ㅠㅠ
이제 VO도 동적으로 가져올때 저런방식으로 찾자~!
댓글 없음:
댓글 쓰기