Semicolons make deconstruction assignment problematic in Chrome Javascript Console

I ran the following code in turn in Chrome Javascript Console

{f}={f:3} // it created a new variable f with a value of 3
{f}={f:3}; // Uncaught SyntaxError: Unexpected token '='

{f}={f:3} // There is a blank line on it,error: Uncaught SyntaxError: Unexpected token '='

Why do they behave differently?

The problem extends from here: object_destructuring – Assignment separate from declaration