HaxeではDynamic型を利用して、文字列からオブジェクトの属性を定義することができます。
■注意1:項目のデリミタ
JSONの記法では、要素間のカンマは
1番後ろの要素の後につけてはいけないようです。(ランタイムエラー)
neko: Uncaught exception - Invalid char 125■注意2:配列の反復
Dynamicオブジェクトの要素内の配列を
forでイテレート(反復)するときは、
一旦 Array<Dynamic>型にセットし直さないと
以下のようなコンパイルエラーになります。
haxe: You can't iterate on a Dynamic value, please specify Iterator or Iterableimport haxe.Json;
static function main() { Sys.println("test starting."); var data : String = '{ "provinces": [ { "name": "Kyoto", "capital": "Kyoto" },{ "name": "Hyogo", "capital": "Kobe" }] } '; var x = Json.parse(data); var a : Array<Dynamic> = x.provinces; for (i in a) { trace(i); } }