本篇內(nèi)容主要講解“如何使用es6實現(xiàn)兩個變量的轉(zhuǎn)換”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“如何使用es6實現(xiàn)兩個變量的轉(zhuǎn)換”吧!
成都創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè)與策劃設(shè)計,余姚網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:余姚等地區(qū)。余姚做網(wǎng)站價格咨詢:13518219792
4種實現(xiàn):1、采用二進(jìn)制異或的方法來交換數(shù)值,語法“a = a ^ b;b = a ^ b; a = a ^ b;”或“a=(b^=a^=b)^a;”;2、利用數(shù)組下標(biāo)來交換,語法“a=[a, b];b=a[0];a=a[1]; ”;3、數(shù)組特殊置換法,語法“a = [b, b = a][0]; ”;4、對數(shù)組元素進(jìn)行提取和賦值,語法“[a, b] = [b, a];”。
方法一:異或置換法
方案分析:這里采用二進(jìn)制異或的方法交換數(shù)值。異或的特點:同數(shù)為0,異數(shù)為1;將用戶輸入的值分別轉(zhuǎn)換成二進(jìn)制,在進(jìn)行異或,JS里面的異或符號是用shift+6,通過兩次異或還是本身這個原理,即可實現(xiàn)兩個數(shù)的交換。
注意:其變換形式:a = (b^=a^=b)^a;【一行代碼搞定兩數(shù)置換】
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 方法一:異或置換法(同數(shù)為0,異數(shù)為1)
var a = prompt('請輸入a的值');
var b = prompt('請輸入b的值');
a = a ^ b;
b = a ^ b;
a = a ^ b;
//a = (b ^= a ^= b) ^ a; //與上面三行實現(xiàn)同理只是變成一行代碼
document.write('交換后a的值是' + a + '<br>', '交換后b的值是' + b);
</script>
</body>
</html>
運行結(jié)果:
方法二:數(shù)組特殊置換法【進(jìn)階】
方案分析:這里使用的是特定數(shù)組的方法,將兩個數(shù)直接轉(zhuǎn)換,首先假設(shè)a=6,b=9則有a=[9,b=a][0]>>>a=[9,b=6][0]>>>a=[9,6][0]>>>b=6>>>a[0]=9>>>a=9。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 方法二:數(shù)組置換法
var a = prompt('請輸入a的值');
var b = prompt('請輸入b的值');
a = [b, b = a][0];
document.write('交換后a的值是' + a + '<br>', '交換后b的值是' + b);
</script>
</body>
</html>
方法三:數(shù)組普通置換法
方案分析:這里使用的是普通數(shù)組置換的方法,首先將把a(bǔ),b的值存放在a[a,b]這個數(shù)組中,其次先將a[0]值賦給b,再將a[1]的值賦給a,不這樣會導(dǎo)致a與b的值相等。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 方法三:數(shù)組普通置換法
var a = prompt('請輸入a的值');
var b = prompt('請輸入b的值');
a = [a, b]; //接收用戶輸入的值
document.write('交換前a,b的值是' + a + '<br>');
b = a[0]; //將第一值賦給b必須寫在a的前面
a = a[1]; //將第二值賦給a
document.write(a);
document.write(b);
</script>
</body>
</html>
方法四:ES6賦值法
方案分析:這里使用的是ES6置換的方法,由于ES6允許我們對數(shù)組和對象提取,所以可以進(jìn)行變量賦值,來實現(xiàn)兩數(shù)直接交換。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 方法四:ES6賦值法
var a = prompt('請輸入a的值');
var b = prompt('請輸入b的值');
[a, b] = [b, a];
document.write('交換后a的值是' + a + '<br>', '交換后b的值是' + b);
</script>
</body>
</html>
到此,相信大家對“如何使用es6實現(xiàn)兩個變量的轉(zhuǎn)換”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
分享名稱:如何使用es6實現(xiàn)兩個變量的轉(zhuǎn)換
轉(zhuǎn)載來源:http://www.rwnh.cn/article10/gjhjdo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、電子商務(wù)、品牌網(wǎng)站制作、動態(tài)網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)