This one was a real surprise, the rest were "sharp eyes" or "understand how to use your tools".
function foo() {
let a = b = 0
a++
return a
}
console.log(typeof a)
console.log(typeof b)
As expected, `a` is defined with `let`, so it is a local variable. But `b` is defined without let, so it is actually globally. I personally do not like declaring multiple variables in a single statement like this, so I've probably not coded any bugs with this behaviour, but I have most certainly worked on code which I now understand to have latent bugs due to this behaviour.