次のケース クラスを定義するとします。
case class A(i: Int)
case class B(str: String)
case class T(a: A, b: B)
次に、次のように json に変換し、解析して再度変換を試みます。
val json = write(T(A(1), B("One")))
val parsed = JSON.parse(json).asInstanceOf[js.Dictionary[js.Any]].toMap
println("Json: " + json)
parsed.foreach { case (k, v) =>
println(s"$k: ${v.toString}")
println("Stringify: " + JSON.stringify(v, js.Array[js.Any]()))
}
次の出力が得られます。
Json: {"a":{"i":1},"b":{"str":"One"}}
a: [オブジェクト オブジェクト]
文字列化: {}
b: [オブジェクト オブジェクト]
文字列化: {}
toString も stringify もオブジェクトを正しく json に変換しないのはなぜですか?