¿Por qué es {} + [] diferente de ({} + [])? [duplicar]
Esta pregunta ya tiene una respuesta aquí:
¿Cuál es la explicación de estos extraños comportamientos de JavaScript mencionados en la charla 'Wat' para CodeMash 2012? 5 respuestasHace poco me alarmó descubrir lo siguiente:
> {}+[]
0
> ({}+[])
"[object Object]"
> {}+[]+1
1
> ({}+[])+1
'[object Object]1'
> {}+[] == ({}+[])
false
¿Por qué envolver algo entre paréntesis cambia su tipo?