如何在JavaScript中將十進位制轉換為十六進位制?
對於任何使用低階語言或組合語言工作的計算機程式設計師來說,將十進位制轉換為十六進位制或十六進位制是一個基本任務。在Web開發中,我們使用顏色,並且為了表示它們,使用十六進位制顏色程式碼是一種常見的做法。在Javascript中,由於ECMA提供的內建函式和方法,將十進位制轉換為十六進位制非常容易。在本文中,我們將討論使用適當示例在javascript中將十進位制轉換為十六進位制的多種方法。
使用toString()方法
使用自定義函式
使用toString()方法
顧名思義,toString()方法用於將數字轉換為字串,javascript中的每個物件都有toString()方法。此方法將基數作為引數(可選)。
語法
Number.toString( Radix )
這裡的基數在2到36之間。其中,2進製表示二進位制,8進製表示八進位制,16進製表示十六進位制。
返回值
此方法返回作為提供的基數值的數字的字串。
要將十進位制轉換為十六進位制,我們需要以下步驟:
將toString()方法應用於數字。
將16作為toString方法的引數傳遞。
示例
在這個例子中,我們使用toString方法將十進位制轉換為十六進位制。
<html>
<body>
<h2>Convert decimal to hex using toString() method</h2>
<p id="input"> Decimal: </p>
<p id="output"> Hex: </p>
<script>
let num = 146541;
document.getElementById("input").innerText += num;
let hex = "";
hex = num.toString(16).toUpperCase();
// Print the values
document.getElementById("output").innerText += hex ;
</script>
</body>
</html>
使用自定義邏輯
雖然javascript提供了將十進位制轉換為十六進位制的內建方法,但我們也可以實現自定義邏輯來將十進位制轉換為十六進位制。以下是步驟:
建立一個包含所有十六進位制字元的變數,即“0123456789ABCDEF”。
執行迴圈,直到十進位制數大於0。
在每次迭代中,透過將其除以16來獲得十進位制數的餘數。
並獲取餘數位置的十六進位制字元的字元,這就是你如何獲得相應的十六進位制字元。
連線所有這些十六進位制字元。
最後,在每次迭代中將十進位制數除以16。
示例
在這個例子中,我們透過建立一個自定義函式來將十進位制轉換為十六進位制。
<html>
<body>
<h2>Convert decimal to hex using custom logic</h2>
<p id="input"> Decimal: </p>
<p id="output"> Hex: </p>
<script>
// Define the decimal number to be converted
let num = 116565;
document.getElementById("input").innerText += num;
// Define the hexadecimal characters used for mapping
let hexChars = "0123456789ABCDEF";
// Define variables for the result and the original number
let result = "";
let temp = num;
// Convert the decimal number to a hexadecimal string
while (num > 0) {
let remainder = num % 16;
result = hexChars[remainder] + result;
num = Math.floor(num / 16);
}
document.getElementById("output").innerText += result ;
</script>
</body>
</html>
廣告
資料結構
網路
關係資料庫管理系統(RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP