对调 2个变量的值若干种方式

简介: 对调 2个变量的值若干种方式
方式1 临时变量法

let a = 3
let b = 5
let temp = a;
a = b;
b = temp

方式2 倒水加减法

let a = 3
let b = 5
a = a + b // 3 + 5 此时a , 为原a + b ,我们称和 总和
b = a - b // 8 - 5 求差,获得原a的值也就3, 赋值给b
a = a - b // 8 - 3 此时 b 已经是原a的值, 总-b 求差,可以获得 原b的值

方式3 数组解构法

let a = 3
let b = 5
let arr = [a,b]
[b,a] = [a,b]

方式4 数组下标法

let a = 3
let b = 5
let arr = [a,b]
b = arr[0]
a = arr[1]

方式 5 对象键值法

var obj = {a:b,b:a}
a = obj.b
b = obj.a

方式 6 数组运算法 ,里面先运算 -----这个有点妙🐱

let a =3
let b = 5
a = [b,b=a][0]

方式 7 按位异或法

let a =3
let b = 5

a = a^b
b= b^a
a = a^b

相关文章
|
6月前
【变态面试题】【两种解法】不能创建临时变量(第三个变量),实现两个数的交换
【变态面试题】【两种解法】不能创建临时变量(第三个变量),实现两个数的交换
50 0
【变态面试题】【两种解法】不能创建临时变量(第三个变量),实现两个数的交换
|
3月前
|
存储
两个变量数值的交换
两个变量数值的交换
|
4月前
交换两个变量的值
交换两个变量的值
判断变量是否为数组的几种方法
判断变量是否为数组的几种方法
146 0
|
存储 算法 JavaScript
设计并实现一个函数, 功能为给定一个存储为随机整数的数组,从中删除所有值为i的整数
设计并实现一个函数, 功能为给定一个存储为随机整数的数组,从中删除所有值为i的整数
定义一个包含10个整数元素的数组,初始值由用户给定。找出数组中的最大数并连同下标一起输出。
定义一个包含10个整数元素的数组,初始值由用户给定。找出数组中的最大数并连同下标一起输出。
231 0
|
算法
【经典算法问题 二】交换两个变量值,不使用第三个变量
【经典算法问题 二】交换两个变量值,不使用第三个变量
67 0
|
自然语言处理 C语言 C++
输入两个整数,求它们按由从大到小的顺序输出。要求使用变量的引用。
输入两个整数,求它们按由从大到小的顺序输出。要求使用变量的引用。
|
数据安全/隐私保护 C语言
【C语言】交换两个int变量的值,不能使用第三个变量
交换两个int变量的值,不能使用第三个变量。即a=3,b=5,交换之后 a=5,b=3
求字符串的长度(4种写法)(普通写法,函数写法(两种:有无返回值),不允许创建临时变量法(递归))
求字符串的长度(4种写法)(普通写法,函数写法(两种:有无返回值),不允许创建临时变量法(递归))
154 0
求字符串的长度(4种写法)(普通写法,函数写法(两种:有无返回值),不允许创建临时变量法(递归))