Почему {}+[] === 0?
Сам спросил, сам отвечаю.
Если фигурные скобки идут не в составе выражения, то JS считает его просто блоком. А т.к. он пустой, то он просто игнорируется. И в итоге остается только +[], что значит преобразование массива в число.
не помню рассказывают тут или нет конкретно, но в любом случае полезно будет
https://www.destroyallsoftware.com/talks/wat