当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Javascript Hexadecimal转Decimal用法及代码示例

十进制数字是基于 10 的数字系统,使用 0 到 9 的 10 个数字,十六进制数字是基于 16 的数字系统,使用 16 位数字、从 0 到 9 的数字以及从 A 到 F 的字母。我们给出的十六进制数字为输入我们必须将其转换为十进制JavaScript并打印结果。

例子:

Input: 1A
Output: 26

以下是将十六进制转换为十进制的方法:

使用parseInt()函数

在这种方法中,有一个内置函数Number parseInt()它将把十六进制数转换成它的十进制数。使用以 16 为基数的“parseInt”函数将十六进制转换为十进制,以将十六进制字符串转换为其十进制等效值。

例子:使用内置parseInt() 将十六进制转换为十进制的演示。

function hexadeciToDeci(hex) {
    return parseInt(hex, 16);
}

//  Hexadecimal Number
const hexadecimalNumber = "2A";
const decimal = hexadeciToDeci(hexadecimalNumber);
console.log("Decimal equivalent of", 
             hexadecimalNumber, "is  ", decimal);

输出
Decimal equivalent of 2A is   42

时间复杂度:在)。

空间复杂度:O(1)。

使用Number()函数

在这种方法中,我们将使用内置 JavaScript 函数 Number() 将连接的字符串转换为十进制数。当 Number() 函数内存在 “0x” 前缀时,JavaScript 会识别十六进制格式。我们将返回十六进制输入的十进制等效值。

例子:演示使用Number()函数将十六进制转换为十进制。

function hexaToDeci(hex) {

    // Using Number() function with base 16 
    return Number(`0x${hex}`);
}

// hexadecimal string
const hexadecimalNumber = "1A";
const decimal = hexaToDeci(hexadecimalNumber);
console.log("Decimal equivalent of  ",
    hexadecimalNumber, "is  ", decimal);

输出
Decimal equivalent of   1A is   26

时间复杂度:在)。

空间复杂度:O(1)。

使用迭代法

在这种方法中,我们将转换十六进制首先使用“parseInt”内置函数将当前(每个)十六进制数字转换为其十进制等效值,然后通过乘以 16 并加上当前数字的十进制值来更新十进制值。

例子:下面是通过迭代十六进制字符串的每个字符来将十六进制转换为十进制。

// Define the function 
function hexadeciToDeci(hex) {
    
    // Initialize Variable
    let decimal = 0;

    for (let i = 0; i < hex.length; i++) {

        // Convert the current hexadecimal digit
        let digit = parseInt(hex[i], 16);

        // Update the decimal value by multiplying by 16
        // Add the decimal value of the current digit
        decimal = decimal * 16 + digit;
    }

    return decimal;
}

//  hexadecimal number
const hexadecimalNumber = "1A";
const decimalEqui = hexadeciToDeci(hexadecimalNumber);
console.log(" The Decimal equivalent of", 
              hexadecimalNumber, "is : ", decimalEqui);

输出
 The Decimal equivalent of 1A is :  26

时间复杂度:在)

空间复杂度:O(1)



相关用法


注:本文由纯净天空筛选整理自bug8wdqo大神的英文原创作品 JavaScript Program to Convert Hexadecimal to Decimal。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。