2.4.1 구조체 값의 JSON 표기

2.4.1 구조체 값의 JSON 표기

구조체를 위해 JavaScript Object Notation을 사용할 수도 있어요. 키에 문자열 리터럴을 쓰는 방식입니다:

var point = { "x" : 1, "y" : -5 };

어떤 문자열 리터럴이든 허용되지만, 필드가 유효한 Haxe 식별자일 때만 타입의 일부로 간주됩니다. 그렇지 않으면 Haxe 문법으로는 그 필드에 접근하는 표현을 쓸 수 없고, 대신 Reflection을 통해 Reflect.fieldReflect.setField를 사용해야 해요.

출처: JSON for Structure Values

본문

문자열 키 구조체

구조체 값의 필드명은 따옴표로 감싼 문자열로도 쓸 수 있어요. { "x" : 1 }처럼요. 이는 JSON 데이터를 모델링할 때 특히 유용합니다.

식별자 규칙의 중요성

문자열 키가 유효한 Haxe 식별자일 때만 해당 필드는 타입의 일부로 취급됩니다. 예를 들어 "x"는 유효한 식별자라서 point.x처럼 점 표기법으로 접근할 수 있어요.

비식별자 키 처리

유효한 식별자가 아닌 키(예: 공백이나 특수문자를 포함한 키)는 Haxe 문법으로 직접 접근할 수 없어요. 이런 필드에 접근하려면 Reflect.field(obj, "key")Reflect.setField(obj, "key", value) 같은 리플렉션 API를 써야 합니다.

더 알아보기