解析 JSON
已編碼為字串的 JSON 可以輕鬆地解析為標準的 Julia 型別:
julia> using JSON
julia> JSON.parse("""{
"this": ["is", "json"],
"numbers": [85, 16, 12.0],
"and": [true, false, null]
}""")
Dict{String,Any} with 3 entries:
"this" => Any["is","json"]
"numbers" => Any[85,16,12.0]
"and" => Any[true,false,nothing]
JSON.jl 的一些直接屬性值得注意:
- JSON 型別對映到 Julia 中的合理型別:物件變為
Dict
,陣列變為Vector
,數字變為Int64
或Float64
,boolean 變為Bool
,null 變為nothing::Void
。 - JSON 是一種無型別的容器格式:因此返回的 Julia 向量的型別為
Vector{Any}
,返回的字典的型別為Dict{String, Any}
。 - JSON 標準不區分整數和十進位制數,但 JSON.jl 可以。沒有小數點或科學記數法的數字被解析為
Int64
,而帶小數點的數字被解析為Float64
。這與許多其他語言中的 JSON 解析器的行為密切相關。