Szám hozzáadása két változóhoz egyszerre - CSS-trükkök

Anonim

Két változó egyszerre inicializálható ugyanarra az értékre:

var foo, bar; foo = bar = 10;

De nincs hasonlóan egyszerű mechanizmus hozzá, mondjuk, 5 mind foo, és barugyanabban az időben. Természetesen elég egyszerű a következőket tenni:

foo += 5; // foo is now 15 bar += 5; // bar is now 15

De ez két művelet.

A trükk:

foo += -bar + (bar += 5); // foo and bar are now 15

Erre valószínűleg soha nem lesz szüksége, csak érdekes tudni, hogy lehetséges.

Köszönet Matheus Avellarnak, hogy elküldte ezt a kis gondolkodási trükköt, aki azt is elmagyarázza:

Az -barelemzett elemzés negatív értékévé válik bar, tehát -10. Ezután a += 5fut, és bar15-re áll (10 + 5). Végül összefoglalja mindkét értéket (-10 + 15), és megadja a különbséget a régi barés az új között bar, ami 15.