1.临时变量法
//1.临时变量法
var a = 10,
b = 20;
c = "";
c = b; //c=20
b = a; //b=10;
a = c;
console.log(a, b); //20,10
//相对来说比较简单,但是会声明多余的变量,浪费内存,不推荐使用
2.加减法
// 2.加减法
var a = 3,
b = 5;
a = a + b;//a=8
b = a - b;//3
a = a - b;//5
3.数组法
//3.数组法 通过数组元素的索引来交换值
var a = 3,
b = 5;
var arr = [a, b];
a = arr[1];
b = arr[0];
console.log(a, b); //a=5,b=3
4.对象法
//4.对象法 跟数组法类似
var a = 10,
b = 20;
var obj = { a: 10, b: 20 };
a = obj.b;
b = obj.a;
console.log(a, b);
5.数组运算法
// 5.数组运算法 根据运算符优先级会先执行b=a,在根据索引把值赋给a
var a = 3,
b = 5;
a = [b, (b = a)][0];
console.log(a, b);
6.数组解构赋值法
// 6.数组解构赋值法
var a = 3,
b = 5;
//[a,b]=[3,5]
[a, b] = [b, a];
console.log(a, b);
还有更好的方法欢迎补充!!!