Lägg till ett nummer till två variabler samtidigt CSS-tricks

Anonim

Du kan initialisera två variabler till samma värde på en gång, kinda:

var foo, bar; foo = bar = 10;

Men det finns ingen liknande enkel mekanism att lägga till, säg 5 till båda foooch barsamtidigt. Naturligtvis är det enkelt att bara göra:

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

Men det är två operationer.

Tricket är:

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

Du kommer förmodligen aldrig behöva det här, det är bara intressant att veta att det är möjligt.

Tack till Matheus Avellar för att skicka in det här lilla mindbending tricket, som också förklarar:

Den -baranalyseras och blir det negativa värdet av bar, så -10. Sedan, a += 5driver och uppsättningar bartill 15 (10 + 5). Slutligen summerar det båda värdena (-10 + 15) och ger dig skillnaden mellan gammalt baroch nytt bar, vilket är 15.