为什么要在Go中使用空白标识符?

I'm finding the use of the blank identifier a little hard to understand. I've looked at effective go and understand most of the use cases they describe but then looking at a tutorial I came across this in a route handler function:

var person Person
_ = json.NewDecoder(req.Body).Decode(&person)

in the first line we create a new empty variable of type Person (a struct previously defined) and then I assume that

  • &person is passing the person var in by reference,
  • to be filled with data by the Decode function

this function then goes on to perform a few more tasks before encoding and returning a json response.

Why do we need have the decode assigned to a blank identifier? Couldn't we just run json.NewDecoder(req.Body).Decode(&person) ? if we can't, why not?

I'm assuming you're learning golang and asking because you can't identify why this example used this practice.

As @JimB mentioned in comments, the example writer didn't need to do this they're simply ignoring the Error return.