You've already forked json-iterator
mirror of
https://github.com/json-iterator/go.git
synced 2025-06-21 23:07:33 +02:00
support float
This commit is contained in:
61
README.md
61
README.md
@ -47,4 +47,63 @@ func Benchmark_json_int(b *testing.B) {
|
||||
}
|
||||
```
|
||||
|
||||
3000000 505 ns/op (8x slower)
|
||||
3000000 505 ns/op (8x slower)
|
||||
|
||||
# array
|
||||
|
||||
```
|
||||
func Benchmark_jsoniter_array(b *testing.B) {
|
||||
for n := 0; n < b.N; n++ {
|
||||
iter := ParseString(`[1,2,3]`)
|
||||
for iter.ReadArray() {
|
||||
iter.ReadUint64()
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
10000000 189 ns/op
|
||||
|
||||
```
|
||||
func Benchmark_json_array(b *testing.B) {
|
||||
for n := 0; n < b.N; n++ {
|
||||
result := []interface{}{}
|
||||
json.Unmarshal([]byte(`[1,2,3]`), &result)
|
||||
}
|
||||
}
|
||||
```
|
||||
1000000 1327 ns/op
|
||||
|
||||
# object
|
||||
|
||||
```
|
||||
func Benchmark_jsoniter_object(b *testing.B) {
|
||||
for n := 0; n < b.N; n++ {
|
||||
iter := ParseString(`{"field1": "1", "field2": 2}`)
|
||||
obj := TestObj{}
|
||||
for field := iter.ReadObject(); field != ""; field = iter.ReadObject() {
|
||||
switch field {
|
||||
case "field1":
|
||||
obj.Field1 = iter.ReadString()
|
||||
case "field2":
|
||||
obj.Field2 = iter.ReadUint64()
|
||||
default:
|
||||
iter.ReportError("bind object", "unexpected field")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
5000000 401 ns/op
|
||||
|
||||
```
|
||||
func Benchmark_json_object(b *testing.B) {
|
||||
for n := 0; n < b.N; n++ {
|
||||
result := TestObj{}
|
||||
json.Unmarshal([]byte(`{"field1": "1", "field2": 2}`), &result)
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
1000000 1318 ns/op
|
Reference in New Issue
Block a user