Føj et tal til to variabler på én gang - CSS-tricks

Anonim

Du kan initialisere to variabler til samme værdi på én gang, kinda:

var foo, bar; foo = bar = 10;

Men der er ingen lignende nem mekanisme at tilføje, siger, 5 til begge fooog barpå samme tid. Selvfølgelig er det enkelt nok til bare at gøre:

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

Men det er to operationer.

Tricket er:

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

Du har sandsynligvis aldrig brug for dette, det er bare interessant at vide, at det er muligt.

Tak til Matheus Avellar for at sende dette lille mindbending trick ind, som også forklarer:

Den -barbliver analyseret og bliver den negative værdi på bar, så -10. Derefter a += 5kører og sætter bartil 15 (10 + 5). Endelig opsummerer det begge værdier (-10 + 15) og giver dig forskellen mellem gammelt barog nyt bar, hvilket er 15.