How to Unmarshal the pair values in an nested array by json for Golang

前端 未结 2 1820
北荒
北荒 2021-01-16 15:35

The JSON data like the following:

{\"xxx_xxx\":{\"asks\":[[0.00000315,1022.53968253],[0.00000328,200],[0.00000329,181.70008541]],\"bids\":[[0.00000254,2685.3         


        
2条回答
  •  小鲜肉
    小鲜肉 (楼主)
    2021-01-16 15:56

    Asks and bids are array types not struct types.

    Here is a working playground example

    Below is an example that adds a Nums type that has a One and Two method you can use since those seem to be the format you are expecting. You could add some error checking in these methods to ensure the format is correct too.,

    type Depth struct {
        XXX XXX `json:"xxx_xxx"`
    }
    
    type XXX struct {
        Asks []Nums `json:"asks"`
        Bids []Nums `json:"bids"`
    }
    
    type Nums []float64
    
    func (n Nums) One() float64 {
        if len(n) > 0 {
             return n[0]
        }
        return 0
    }
    
    func (n Nums) Two() float64 {
        if len(n) > 1 {
            return n[1]
        }
        return 0
    }
    

提交回复
热议问题