2017-11-21 26 views
3

나는 Json의 Dynamic 객체를 가지고 있으며이를 Haxe에서 복제해야합니다. 개체를 복제하는 쉬운 방법이 있습니까, 알려주세요. 또는 불가능하다면 최소한 자바 스크립트 객체와 같은 동적 객체를 반복하고 싶습니다.Haxe - 동적 객체를 복제하는 방법?

var config = { 
    loop : true, 
    autoplay : true, 
    path : "data.txt" 
}; 
var newConfig = {}; 
for (i in config) { 
    if (config.hasOwnProperty(i)) 
     newConfig[i] = config[i]; 
} 

답변

5

사용 Reflect.copy() : 그것은 단지 anonymous structures에서 작동하도록 보장하는 것이

var newConfig = Reflect.copy(config); 

참고. 다른 개체의 경우 적절한 Reflect 메서드를 사용하십시오.

+0

안녕하세요, 앤디 감사합니다. 그런데 어떤 유형의 값이 보장되지 않습니까? 예를 들어 Json에서 파싱 된 데이터는 잘 작동할까요? – rener172846

+1

'haxe.Json'에서 파싱 된 데이터는 null, 숫자, 문자열, 배열 또는 익명 객체 일 수 있습니다 (Haxe의 익명 구조와 동일). 익명 객체를 파싱하는 것이 확실하다면'Reflect.copy()'를 사용하는 것이 안전합니다. 그 밖의 모든 기능은 작동하도록 보장되지 않습니다. –

+0

네, 소스 객체가 숫자, 문자열 또는 배열 임에도 불구하고 Reflect.copy의 결과가 항상 익명 구조 였기 때문에 테스트를 마쳤습니다. 최상의 솔루션과 완벽한 경험에 감사드립니다. – rener172846