我有这两个变量:
var a = 1,
b = 2;
我的问题是如何交换它们?只有这个变量,没有任何对象。
发布于 2013-04-25 04:39:39
下面是交换两个变量的值的一行代码。
给定变量a
和b
b = [a, a = b][0];
演示如下:
var a=1,
b=2,
output=document.getElementById('output');
output.innerHTML="<p>Original: "+a+", "+b+"</p>";
b = [a, a = b][0];
output.innerHTML+="<p>Swapped: "+a+", "+b+"</p>";
<div id="output"></div>
发布于 2014-09-18 18:58:37
ES6 (火狐和Chrome已经支持它(解构赋值数组匹配)):
let a = 5, b = 6;
[a, b] = [b, a];
console.log(`${a} ${b}`);
发布于 2015-11-04 18:24:31
从ES6开始,您还可以更优雅地交换变量:
var a = 1,
b = 2;
[a, b] = [b, a];
console.log('a:', a, 'b:', b); // a: 2 b: 1
https://stackoverflow.com/questions/16201656
复制相似问题