一時変数を使わないどころかワンライナーでいける。
右辺が左から評価されて、まず200 + (b = a, 0)
になり、そのあと右側が評価される。カッコの中ではまずb = a
が評価され、変数bにaの値である100が入る。そして、(b = a, 0)
全体の評価結果は0なので、a = 200 + 0
になる。
let a = 100;
let b = 200;
a = b + (b = a, 0);
console.log({ a, b });
/*
{ a: 200, b: 100 }
*/
追記
コメントでもう一つワンライナースワップを教えていただいたので追記。