Em Perl posso dizer:
@a = ();
unshift @a; # @a is still ()
unshift @a, (); # @a is still ()
unshift @a, 1>0 ? 1 : 0; # @a is now (1)
unshift @a, 1>0 ? () : 0; # @a is still (1)
Qual é a sintaxe equivalente do JavaScript, se existir?
a=[];
a.unshift(); # a is still []
a.unshift(...[]); # a is still []
a.unshift( 1>0 ? 1 : 0); # a is now [1]
a.unshift( 1>0 ? ...[] : 0 ); # syntax error
a.unshift( 1>0 ? (...[]) : 0 ); # syntax error
a.unshift( 1>0 ? [] : 0 ); # a is now [[],1]