Se llama
operador condicional. Funciona prácticamente igual que una sentencia if...else, solo que actúa como un operador y es más abreviado.
Lo de la asignación y comparación a la vez es bastante frecuente usarla:
Código Javascript
:
Ver originalconsole.log(a = 1); // 1
console.log(a = 2); // 2