小结一下:
给出两个变量:var a = 1, b = 2;
方法一:
a = a + b;
b = a - b;
a = a - b;
a, b 的值已经交换。
方法二:
a = a ^ b;
b = a ^ b;
a = a ^ b;
a, b 的值已经交换。
原理:异或运算,任意一个数与任意一个给定的值异或两次,其值保持不变。
方法三:
a = b + (b = a) * 0; 或者
a = (a + b) - (a = b);
a, b 的值已经交换。