JavaScript中交换两个变量的方法(面试常考)

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);

还有更好的方法欢迎补充!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值