Môžete inicializovať dve premenné naraz na rovnakú hodnotu, trochu:
var foo, bar; foo = bar = 10;
Neexistuje však žiadny podobne ľahký mechanizmus, ktorý by pridal povedzme 5 k obom foo
a bar
súčasne. Je to samozrejme dosť jednoduché:
foo += 5; // foo is now 15 bar += 5; // bar is now 15
Ale to sú dve operácie.
Trik je:
foo += -bar + (bar += 5); // foo and bar are now 15
Toto pravdepodobne nikdy nebudete potrebovať, je zaujímavé vedieť, že je to možné.
Ďakujeme Matheusovi Avellarovi za zaslanie tohto malého triku zameraného na mysli, ktorý tiež vysvetľuje:
-bar
Dostane analyzovaný a stane sa zápornú hodnotubar
, takže -10. Potoma += 5
beží a nastavuje sabar
na 15 (10 + 5). Nakoniec sčíta obe hodnoty (-10 + 15) a dá vám rozdiel medzi staroubar
a novoubar
, čo je 15.