在本教學中,我們將學習在 JavaScript 中將二進位轉換為十進位。二進制數用於數位電子產品。它是由‘0’和‘1’組成的字串,表示相對於基底數2的數字。
以下是將二進制數轉換為十進制數的不同方法。
在 JavaScript 中,parseInt() 方法對於從字串中提取數字非常有用。我們可以將數字的基數定義為 parseInt() 方法中的參數。
使用者可以依照下列語法使用parseInt()方法將二進位轉換為十進位。
let binary = "0101"; let output = parseInt(binary, base);
binary - 它是二進制數的字串。
base - 它是二進位字串的基礎。在我們的例子中,我們將傳遞基數“2”,因此它從字串中提取二進制數並將其轉換為十進制。
在下面的範例中,我們使用了parseInt()方法。我們已將二進位字串和基數 2 作為 parseInt() 方法的參數傳遞。我們已經針對不同的二進位字串評估了我們的方法。使用者可以看到我們渲染了二進位字串的十進制的輸出。
<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>
在本節中,我們將建立自訂函數以將二進制數轉換為十進制數。我們將使用 Math.pow() 函數。通常,二進制數表示為2s的冪。
我們透過下面的例子來理解一下。 ‘110’是二進位字串,我們可以用十進位表示如下。
'110' = 1*22 + 1*21 + 0*20 = 6 (In decimal)
因此,用戶已經了解如何將二進制轉換為十進制,並且我們將在程式碼中應用 thing 方法。
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. }
math.pow() 函數有兩個參數。
number - 這是使用者想要計算冪的數字。在我們的例子中,它是固定的,即 2。
power - 這是第一個參數的冪。我們將使用 for 迴圈傳遞不同的值來獲得 2 的不同冪。
在此範例中,我們建立了將二進位轉換為十進位的函數。在函數內部,我們從最後一個字元開始迭代二進位字串的每個字元。
如果我們在二進位字串中得到“1”,我們將使用 decimal 變數中的 Math.pow() 函數根據字元位置添加 2 的冪。當我們在二進位字串中得到「0」時,我們不會儲存任何值,因為當我們將 2 的冪與 0 相乘時,它會傳回零。
<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>
在本教學中,我們使用了parseInt()方法將二進位轉換為十進位。此外,我們還建立了一個自訂函數。使用者可以根據自己的理解選擇其中一種方式。
但是,第二種方法的時間複雜度較高。所以,最好使用第一種方法。
以上是如何在JavaScript中將二進位轉換為十進位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!