用面向对象的方式操作 JSON 甚至还能做四则运算 JSON 库

前言

在之前实现的用面运算 JSON 解析器​中当时只实现了将一个 JSON 字符串转换为一个 JSONObject​,并没有将其映射为一个具体的向对象 struct​;如果想要获取值就需要先做断言将其转换为 map 或者是切片再来获,会比较麻烦。云服务器提供商操作

decode,甚至 err := gjson.Decode(`{ "glossary":{ "title":"example glossary","age":1}}`)

用面向对象的方式操作 JSON 甚至还能做四则运算 JSON 库

assert.Nil(t, err)

用面向对象的方式操作 JSON 甚至还能做四则运算 JSON 库

glossary := v["glossary"].(map[string]interface{ })

用面向对象的方式操作 JSON 甚至还能做四则运算 JSON 库

assert.Equal(t, glossary["title"], "example glossary")

assert.Equal(t, glossary["age"], 1)

但其实转念一想,部分场景我们甚至我们只需要拿到 JSON​ 中的做则某个字段的值,这样还需要先声明一个 struct 会略显麻烦。服务器租用用面运算

经过查询发现已经有了一个类似的向对象库来解决该问题,https://github.com/tidwall/gjson 并且 star 数还很多(甚至名字都是操作一样的

高防服务器
滇ICP备2023000592号-31