Можете истовремено иницијализовати две променљиве у исту вредност, некако:
var foo, bar; foo = bar = 10;
Али не постоји слично лак механизам за додавање, рецимо, 5 у оба foo
и bar
истовремено. Наравно, довољно је једноставно:
foo += 5; // foo is now 15 bar += 5; // bar is now 15
Али то су две операције.
Трик је:
foo += -bar + (bar += 5); // foo and bar are now 15
Вероватно вам ово никада неће требати, само је занимљиво знати да је то могуће.
Захваљујемо се Матхеусу Авеллару што је послао овај мали запањујући трик који такође објашњава:
-bar
Се изврсавају и постаје негативна вредностbar
, тако -10. Затим сеa += 5
покреће и постављаbar
на 15 (10 + 5). На крају, сумира обе вредности (-10 + 15) и даје вам разлику између стареbar
и новеbar
, која је 15.