js实现两个数交换

// 实现两个数的交换问题
举个栗子:

//输入:
var num1 =10;
var num2 = 20;
//输出结果:
num1 = 20; 
num2 = 10;

1.方法一:
- 使用中间变量进行交换两个数

var num1 = 10;
var num2 = 20;
var tmp = num1;
num1 = num2;
num2 = tmp;//实现了两个数的交换,由于声明中间变量,浪费内存
console.log(`num1 = ${num1} \t num2 = ${num2}`);

2.方法二:
- 使用加法和减法实现两个数交换

var num1 = 10;
var num2 = 20;
num1 = num1 + num2;
num2 = num1 - num2;
num1 = num1 - num2;
console.log(`num1 = ${num1} \t num2 = ${num2}`);

3.方法三:
- 使用^解决

var num1 = 10;
var num2 = 20;
num1 = num1 ^ num2;
num2 = num1 ^ num2;
num1 = num1 ^ num2;
console.log(`num1 = ${num1} \t num2 = ${num2}`);

4.方法四:
- 使用JavaScript的动态特性

var num1 = 10;
var num2 = 20;
num1 = [num1,num2];
num2 = num1[1];
num1 = num1[0];
console.log(`num1 = ${num1} \t num2 = ${num2}`);

5.方法五:
- 使用ES6的特性解决

 var num1 = 10;
 var num2 = 20;
 [num1,num2] = [num2,num1];
  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值