@@ -61,8 +61,9 @@ jsonparser.ArrayEach(data, func(value []byte, dataType jsonparser.ValueType, off
61
61
}, " person" , " avatars" )
62
62
63
63
// You can use `ObjectEach` helper to iterate objects { "key1":object1, "key2":object2, .... "keyN":objectN }
64
- jsonparser.ObjectEach (data, func (key []byte , value []byte , dataType jsonparser.ValueType , offset int , err error ) {
64
+ jsonparser.ObjectEach (data, func (key []byte , value []byte , dataType jsonparser.ValueType , offset int ) error {
65
65
fmt.Printf (" Key: '%s '\n Value: '%s '\n Type: %s \n " , string (key), string (value), dataType)
66
+ return nil
66
67
}, " person" , " name" )
67
68
```
68
69
@@ -130,6 +131,20 @@ func ArrayEach(data []byte, cb func(value []byte, dataType jsonparser.ValueType,
130
131
```
131
132
Needed for iterating arrays, accepts a callback function with the same return arguments as `Get`.
132
133
134
+ ### **`ObjectEach`**
135
+ ```go
136
+ func ObjectEach(data []byte, callback func(key []byte, value []byte, dataType ValueType, offset int) error, keys ...string) (err error)
137
+ ```
138
+ Needed for iterating object, accepts a callback function. Example:
139
+ ```go
140
+ var handler func([]byte, []byte, jsonparser.ValueType, int) error
141
+ handler = func(key []byte, value []byte, dataType jsonparser.ValueType, offset int) error {
142
+ // do stuff here
143
+ }
144
+ jsonparser.ObjectEach (myJson, handler)
145
+ ```
146
+
147
+
133
148
### ** ` KeyEach ` **
134
149
``` go
135
150
func KeyEach (data []byte , cb func (idx int , value []byte , dataType jsonparser.ValueType , err error ), paths ...[]string )
0 commit comments