Bagaimana untuk menukar binari kepada perpuluhan dalam JavaScript?

王林
Lepaskan: 2023-08-26 14:21:17
ke hadapan
1992 orang telah melayarinya

Bagaimana untuk menukar binari kepada perpuluhan dalam JavaScript?

Dalam tutorial ini, kita akan belajar untuk menukar binari kepada perpuluhan dalam JavaScript. Nombor binari digunakan dalam elektronik digital. Ia adalah rentetan yang terdiri daripada ‘0’ dan ‘1’, mewakili nombor relatif kepada asas 2.

Berikut ialah cara berbeza untuk menukar nombor binari kepada nombor perpuluhan.

Gunakan kaedah parseInt()

Dalam JavaScript, kaedah parseInt() sangat berguna untuk mengekstrak nombor daripada rentetan. Kita boleh mentakrifkan asas nombor sebagai parameter dalam kaedah parseInt().

Tatabahasa

Pengguna boleh menggunakan kaedah parseInt() mengikut sintaks berikut untuk menukar binari kepada perpuluhan.

let binary = "0101";
let output = parseInt(binary, base);
Salin selepas log masuk

Parameter

  • binary - Ia adalah rentetan nombor binari.

  • asas - Ia adalah asas rentetan binari. Dalam kes kami, kami akan melepasi asas "2" supaya ia mengekstrak nombor binari daripada rentetan dan menukarkannya kepada perpuluhan.

Contoh

Dalam contoh di bawah, kami telah menggunakan kaedah parseInt(). Kami telah melepasi rentetan binari dan asas 2 sebagai hujah kepada kaedah parseInt(). Kami telah menilai pendekatan kami pada rentetan binari yang berbeza. Pengguna boleh melihat bahawa kami telah memberikan output perpuluhan bagi rentetan binari.

<html>
<head>
   <title>Convert Binary to decimal in JavaScript.</title>
</head>
<body>
   <h2>Convert Binary to decimal using <i> parseInt() </i> method.</h2>
   <h4>The decimal of 0101 is.</h4>
   <div id = "decimal1"> </div>
   <h4>The decimal of 1100011110001 is.</h4>
   <div id = "decimal2"> </div>
   <script>
      let decimal1 = document.getElementById("decimal1");
      let decimal2 = document.getElementById("decimal2");
      let binary = "0101";
      decimal1.innerHTML = parseInt(binary, 2); // we have given based to extract the binary and convert it into the integer
      binary = "1100011110001";
      decimal2.innerHTML = parseInt(binary, 2);
   </script>
</body>
</html>
Salin selepas log masuk

Buat fungsi tersuai untuk menukar binari kepada perpuluhan

Dalam bahagian ini, kami akan mencipta fungsi tersuai untuk menukar nombor binari kepada nombor perpuluhan. Kami akan menggunakan fungsi Math.pow(). Biasanya, nombor binari diwakili sebagai kuasa 2s.

Mari kita fahami melalui contoh berikut. '110' ialah rentetan binari, kita boleh mewakilinya dalam perpuluhan seperti berikut.

'110' = 1*22 + 1*21 + 0*20 = 6 (In decimal)
Salin selepas log masuk

Jadi pengguna telah melihat cara menukar binari kepada perpuluhan dan kami akan menggunakan kaedah perkara dalam kod kami.

Tatabahasa

let decimal = 0;
let l = binary.length;
for (let i = l - 1; i >= 0; i--) {
   if ( binary[i] == '1' )
   decimal += Math.pow( number ,power );// add power of 2 in the decimal if character of binary string is 1.
}
Salin selepas log masuk

Parameter

Fungsi

math.pow() mempunyai dua parameter.

  • nombor - Ini adalah nombor yang pengguna ingin tingkatkan. Dalam kes kami ia ditetapkan, iaitu 2.

  • kuasa - Ini adalah kuasa hujah pertama. Kami akan menggunakan gelung for untuk melepasi nilai yang berbeza untuk mendapatkan kuasa 2 yang berbeza.

Contoh

Dalam contoh ini, kami mencipta fungsi yang menukar binari kepada perpuluhan. Di dalam fungsi itu, kami mengulangi setiap aksara rentetan binari bermula dari aksara terakhir.

Jika kita mendapat "1" dalam rentetan binari, kita akan menggunakan fungsi Math.pow() dalam pembolehubah perpuluhan untuk menambah kuasa 2 berdasarkan kedudukan aksara. Apabila kita mendapat "0" dalam rentetan binari, kita tidak menyimpan sebarang nilai kerana apabila kita mendarab kuasa 2 dengan 0, ia mengembalikan sifar.

<html>
<head>
   <title>Convert Binary to decimal in JavaScript.</title>
</head>
<body>
   <h2>Convert Binary to decimal in JavaScript using the <i> Math.pow() </i> method.</h2>
   <h4>The decimal of 101000 is.</h4>
   <div id = "decimal1"></div>
   <h4>The decimal of 11101010101 is.</h4>
   <div id = "decimal2"></div>
   <script>
      let decimal1 = document.getElementById("decimal1");
      let decimal2 = document.getElementById("decimal2");
      function DecimalToBinary( binary ) {
      let decimal = 0;
      let l = binary.length;
      for (let i = l - 1; i >= 0; i--) {
         if ( binary[i] == '1' )
         decimal += Math.pow( 2, l - 1 - i );
      }
      return decimal;
      }
      decimal1.innerHTML = DecimalToBinary( "101000" );
      decimal2.innerHTML = DecimalToBinary( "11101010101" );
   </script>
</body>
</html>
Salin selepas log masuk

Dalam tutorial ini, kami telah menggunakan kaedah parseInt() untuk menukar binari kepada perpuluhan. Selain itu, kami mencipta fungsi tersuai. Pengguna boleh memilih salah satu kaedah berdasarkan pemahaman mereka sendiri.

Namun, kaedah kedua mempunyai kerumitan masa yang lebih tinggi. Jadi, lebih baik menggunakan kaedah pertama.

Atas ialah kandungan terperinci Bagaimana untuk menukar binari kepada perpuluhan dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!