割り当てにはJSで戻り値があります


console.log(b=1) // 1


割り当てには戻り値があるため、割り当てを連鎖させることができます.

let a;
let b;

a = b = 1

console.log(a); // 1
console.log(b); // 1


読みにくいですが、うまくいきます...

let a = 1;
let b = 2;

let c = 3 - (a = b + 1);

console.log(a); // 3
console.log(c); // 0