Rumah > Artikel > hujung hadapan web > Bagaimana untuk menukar dua pembolehubah menggunakan es6
4 pelaksanaan: 1. Gunakan kaedah XOR binari untuk menukar nilai, sintaks "a = a ^ b;b = a ^ b; a = a ^ b;" atau "a=(b^ =a^ =b)^a;"; 2. Gunakan subskrip tatasusunan untuk bertukar, sintaksnya ialah "a=[a, b];b=a[0];a=a[1]; "; 3. Kaedah Penggantian khas tatasusunan , sintaks "a = [b, b = a][0];"; 4. Ekstrak dan tetapkan nilai kepada elemen tatasusunan, sintaks "[a, b] = [b, a];".
Persekitaran pengendalian tutorial ini: sistem Windows 10, ECMAScript versi 6, komputer Dell G3.
Kaedah 1: Kaedah penggantian XOR
Analisis program: Di sini, kaedah XOR binari digunakan untuk menukar nilai. Ciri-ciri XOR: nombor yang sama ialah 0, dan nombor ganjil ialah 1; nilai-nilai yang dimasukkan oleh pengguna masing-masing ditukar kepada binari, dan kemudian XOR dilakukan dalam JS menggunakan anjakan 6. Selepas dua XOR, ia masih sama. Ini membolehkan pertukaran dua nombor.
Nota: Bentuk transformasinya: a = (b^=a^=b)^a;[Satu baris kod untuk menggantikan dua nombor 】
nbsp;html> <meta> <meta> <meta> <title>Document</title> <script> // 方法一:异或置换法(同数为0,异数为1) var a = prompt('请输入a的值'); var b = prompt('请输入b的值'); a = a ^ b; b = a ^ b; a = a ^ b; //a = (b ^= a ^= b) ^ a; //与上面三行实现同理只是变成一行代码 document.write('交换后a的值是' + a + '<br>', '交换后b的值是' + b); </script>
Hasil jalankan:
Kaedah Kedua: Kaedah Penggantian Khas Tatasusunan [Lanjutan]
Analisis Program: Digunakan di sini Ia adalah kaedah untuk tatasusunan tertentu Ia menukarkan dua nombor secara langsung, dengan mengandaikan a=6,b=9, kemudian a=[9,b=a][0]>>>a=[9,b. =6 ][0]>>>a=[9,6][0]>>>b=6>>>a[0]=9>>>a=9 .
nbsp;html> <meta> <meta> <meta> <title>Document</title> <script> // 方法二:数组置换法 var a = prompt('请输入a的值'); var b = prompt('请输入b的值'); a = [b, b = a][0]; document.write('交换后a的值是' + a + '<br>', '交换后b的值是' + b); </script>
Kaedah Tiga: Kaedah Penggantian Tatasusunan Biasa
Analisis Program: Kaedah penggantian tatasusunan biasa digunakan di sini Pertama, nilai a dan b disimpan dalam tatasusunan a[a,b]. dan kemudian a ialah Nilai [1] diberikan kepada a Kegagalan berbuat demikian akan menyebabkan nilai a dan b adalah sama.
nbsp;html> <meta> <meta> <meta> <title>Document</title> <script> // 方法三:数组普通置换法 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>
Kaedah 4: Kaedah tugasan ES6
Analisis program: Kaedah penggantian ES6 digunakan di sini Memandangkan ES6 membenarkan kami mengekstrak tatasusunan dan objek, tugasan pembolehubah boleh dilakukan untuk mencapai pertukaran terus dua nombor.
nbsp;html> <meta> <meta> <meta> <title>Document</title> <script> // 方法四:ES6赋值法 var a = prompt('请输入a的值'); var b = prompt('请输入b的值'); [a, b] = [b, a]; document.write('交换后a的值是' + a + '<br>', '交换后b的值是' + b); </script>
[Cadangan berkaitan: tutorial video javascript, Video pengaturcaraan]
Atas ialah kandungan terperinci Bagaimana untuk menukar dua pembolehubah menggunakan es6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!