卡在我看不到的 Go 语法错误

我收到语法错误,我不知道为什么。我尝试了几种变体,但没有成功。


type dataType int64


const (

    PM_SENT dataType = iota + 1

    PM_VIEWED

)


func messageHandler(m []byte) error {

    var data map[string]interface{}

    if err := json.Unmarshal(m, &data); err != nil {

        return err

    }


    var dt dataType

    flt, ok := data["type"].(float64); ok {

        dt = dataType(flt)

    }


    return nil

}

我收到此错误:


.\messageHandler.go:23: syntax error: unexpected =, expecting comma or }

即使我改成这个,我仍然会得到同样的错误:


var dt int64

flt, ok := data["type"].(float64)

if ok {

    dt = int64(flt)

}


慕森卡
浏览 142回答 1
1回答

慕容森

此代码不会引发任何错误:if flt, ok := data["type"].(float64); ok {    dt = int64(flt)}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go