Ternary operator don't nest very nicely though (they do nest , but it's not very readable). IMO a bigger difference is Rust's match and blocks also being expressions. These have no alternatives in JavaScript.
x > 0 ? 'positive' :
x < 0 ? 'negative' :
'zero' match x {
0 => 'zero',
x if x > 0 => 'positive',
x if x < 0 => 'negative',
}It's published on npm and everything. It's small, a bit unpolished, maybe needs more docs, but it works pretty damn well if you ask me!