可以通过一个中间变量来完成:
function swap(num) { if (num === 1) { num = 2; } else if (num === 2) { num = 1; } return num; }
或者使用异或运算的方法:
function swap(num) { return num ^ 3; }
其中,异或运算^
会将两个数对应二进制位相同则为0,不同则为1,因此对一个数和3(二进制位为11)做异或运算,就相当于将它的最后一位取反,达到了1和2互换的目的。
可以通过一个中间变量来完成:
function swap(num) { if (num === 1) { num = 2; } else if (num === 2) { num = 1; } return num; }
或者使用异或运算的方法:
function swap(num) { return num ^ 3; }
其中,异或运算^
会将两个数对应二进制位相同则为0,不同则为1,因此对一个数和3(二进制位为11)做异或运算,就相当于将它的最后一位取反,达到了1和2互换的目的。