var x = (var y=rnd(10);y*y);
Bizarre non ? C’est l’utilisation du point virgule qui fait tout ici. Il permet de chaîner des expressions, la valeur finale étant celle de la dernière.
Dans le code exemple cela attribuera à x la valeur du carré d’un nombre aléatoire (en supposant rnd() une fonction retournant un tel nombre).
L’intérêt ? Comme on le voit dans cet exemple il n’est pas toujours possible d’attribuer à une variable le résultat d’une suite d’opérations
...