搜索

首页  >  问答  >  正文

javascript - js如何不使用临时变量来进行两个变量值的交换?

假设存在以下代码

var foo = 1, bar = 2;

如何不用临时变量,进行两个值的交换。

以下是我常用的方法

var foo = 1; bar =2;
bar = [foo,foo=bar][0];
console.log(foo);
console.log(bar);

大家有没有更绝杀的方法呢?

PHP中文网PHP中文网2897 天前438

全部回复(3)我来回复

  • 怪我咯

    怪我咯2017-04-10 14:38:23

    很经典的问题了,C里面怎么交换这里就怎么交换。前提是两个都是整数。

    foo ^= bar;
    bar ^= foo;
    foo ^= bar;
    

    回复
    0
  • 巴扎黑

    巴扎黑2017-04-10 14:38:23

    这是何苦呢

    回复
    0
  • 巴扎黑

    巴扎黑2017-04-10 14:38:23

    今年可以[a, b] = [b, a]

    回复
    0
  • 取消回复