通过使用javascript方法,定义两个变量把两个变量的值进行交换(部分方式是在不引入第三个变量的情况下)

补文第一更,后续会慢慢补上

本文一共介绍了四种方法,有引入地三个变量,也有不引入

目录

第一种:添加临时变量

 第二种:加减法(在不引入第三个变量的情况下)

第三种:数组法

第四种(涉及到es6)(在不引入第三个变量的情况下)


第一种:添加临时变量

这里通过添加临时变量c,一个空的变量(记得使用Number转变成数字类型哦),然后三个变量之间进行交换,就达到了交换变量值的效果

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			
			var a = 1;
			var b = 2;
			var c = '';
			c = Number(c)

			c = a;
			a = b;
			b = c;

	console.log(a,b)
			
			

		</script>
	</body>
</html>

 第二种:加减法(在不引入第三个变量的情况下)

这里的逻辑思路是先把a的值改变,把a,b的和赋值给a,然后b的值就可以通过a(此时的a的值是a,b的和,也就是3,不再是1)减去现在b的值,就得到了a最初的值,初步实现了一次变量交换,然后因为此时的b的值是1,所以我们用现在的a减去现在的b,再赋值给a就成功的改变了a的值,这样就实现了a,b值的互相交换

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			//加减法
			var a = 1;
			var b = 2;
			
			a = a + b;
			b = a - b;
			a = a - b;
			
			console.log(a,b)
			

		</script>
	</body>
</html>

第三种:数组法

这个方法是通过数组下标的这个特性来进行交换,但这种方法和第一种创建变量方法大体上一致,所以两个选一个理解即可

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			//数组法
			var  a = 1;
			var  b = 2;
            var  c = [];
			
			c = [a,b];
			a = c[1];
			b = c[0];
			console.log(a,b);
			
		
			
		</script>
	</body>
</html>

第四种(涉及到es6)(在不引入第三个变量的情况下)

这种方法同样涉及到了数组,通过下标赋值转换达到效果

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
	
		//es6
			 var a =1;
			 var b =2;

			 [a,b] = [b,a]
			 console.log(a,b)
			
			
		</script>
	</body>
</html>

全部代码附上

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			//数组法
			// var  a = 1;
			// var  b = 2;
			
			// c = [a,b];
			// a = c[1];
			// b = c[0];
			// console.log(a,b);
			
			
			//加减法
			// var a = 1;
			// var b = 2;
			
			// a = a + b;
			// b = a - b;
			// a = a - b;
			
			// console.log(a,b)
			
			
			//临时变量法
	// 		var a = 1;
	// 		var b = 2;
	// 		var c = '';
	// 		c = Number(c)

	// 		c = a;
	// 		a = b;
	// 		b = c;

	// console.log(a,b)
	
		//es6
			// var a =1;
			// var b =2;

			// [a,b] = [b,a]
			// console.log(a,b)
			
			
		</script>
	</body>
</html>

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值