您可以一次将两个变量初始化为相同的值:
var foo, bar;
foo = bar = 10;
但是没有类似的简单机制可以同时向foo
和bar
添加5。 当然,这样做很简单:
foo += 5; // foo is now 15
bar += 5; // bar is now 15
但这是两个操作。
诀窍是:
foo += -bar + (bar += 5);
// foo and bar are now 15
您可能永远不需要它,知道它是有意思的。
感谢Matheus Avellar提出的这个小技巧,他还解释了:
-bar
被解析,成为bar
的负值,因此为-10。 然后,运行a += 5
并将bar
设置为15(10 + 5)。 最后,它将两个值相加(-10 + 15),并为您提供旧bar
和新bar
之间的差值15。
翻译自: https://css-tricks.com/snippets/javascript/add-number-two-variables/