站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        使用es6怎么實現(xiàn)兩個變量的轉(zhuǎn)換

        4種實現(xiàn):1、采用二進制異或的方法來交換數(shù)值,語法“a = a ^ b;b = a ^ b; a = a ^ b;”或“a=(b^=a^=b)^a;”;2、利用數(shù)組下標來交換,語法“a=[a, b];b=a[0];a=a[1]; ”;3、數(shù)組特殊置換法,語法“a = [b, b = a][0]; ”;4、對數(shù)組元素進行提取和賦值,語法“[a, b] = [b, a];”。

        使用es6怎么實現(xiàn)兩個變量的轉(zhuǎn)換

        前端(vue)入門到精通課程:進入學習
        Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調(diào)試工具:點擊使用

        本教程操作環(huán)境:windows10系統(tǒng)、ECMAScript 6版、Dell G3電腦。

        es6實現(xiàn)兩個變量轉(zhuǎn)換的4種方法

        方法一:異或置換法

        方案分析:這里采用二進制異或的方法交換數(shù)值。異或的特點:同數(shù)為0,異數(shù)為1;將用戶輸入的值分別轉(zhuǎ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>
        登錄后復(fù)制

        運行結(jié)果:

        使用es6怎么實現(xiàn)兩個變量的轉(zhuǎn)換

        使用es6怎么實現(xiàn)兩個變量的轉(zhuǎn)換

        使用es6怎么實現(xiàn)兩個變量的轉(zhuǎn)換

        方法二:數(shù)組特殊置換法【進階】

        方案分析:這里使用的是特定數(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>
        登錄后復(fù)制

        方法三:數(shù)組普通置換法

        方案分析:這里使用的是普通數(shù)組置換的方法,首先將把a,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>
        登錄后復(fù)制

        方法四:ES6賦值法

        方案分析:這里使用的是ES6置換的方法,由于ES6允許我們對數(shù)組和對象提取,所以可以進行變量賦值,來實現(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>
        登錄后復(fù)制

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 91精品最新国内在线播放| 精品四虎免费观看国产高清午夜| 亚洲热线99精品视频| 51国偷自产精品一区在线视频| 亚洲中文久久精品无码ww16| 99亚洲精品视频| 99久久免费国产精品热| 亚洲国产精品成人久久| 精品久久久久中文字| 国产精品亚洲欧美一区麻豆| 午夜欧美精品久久久久久久| 蜜臀av无码人妻精品| 99久久精品国产一区二区三区| 国产精品美女久久久久| 亚洲精品无码久久久久去q | 亚洲一区精品无码| 久久青青草原精品国产不卡| 91精品国产成人网在线观看| 91精品国产91久久综合| 国产人妖乱国产精品人妖| 亚洲AV无码成人精品区蜜桃 | 国产精品国产三级专区第1集 | 精品久久久久久无码专区| 呦交小u女国产精品视频| 久久久久久久久久久免费精品| 91久久精品电影| 免费精品99久久国产综合精品 | 中文字幕精品无码一区二区三区 | 国产精品久久久亚洲| 精品国产AV一区二区三区| 无码国产乱人伦偷精品视频| 亚洲精品无码不卡在线播HE | 国产午夜精品一区二区| 国产精品国产三级国产| 777久久精品一区二区三区无码| 欧美精品第一页| 四虎影永久在线观看精品| 亚洲国产成人久久精品动漫 | 久久影院综合精品| 蜜臀久久99精品久久久久久小说 | 99re6在线视频精品免费|