How to convert a number to any base in TypeScript

1 Answer

0 votes
function toBase(n: number, base: number): string {
    const digits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";

    if (base < 2 || base > 36) {
        throw new Error("Base must be between 2 and 36");
    }

    if (n === 0) {
        return "0";
    }

    let result = "";

    while (n > 0) {
        const remainder = n % base;
        result += digits[remainder];
        n = Math.floor(n / base);
    }

    return result.split("").reverse().join("");
}

// Main program
try {
    const number = 255;

    console.log(`${number} in base 2  = ${toBase(number, 2)}`);
    console.log(`${number} in base 8  = ${toBase(number, 8)}`);
    console.log(`${number} in base 16 = ${toBase(number, 16)}`);
    console.log(`${number} in base 36 = ${toBase(number, 36)}`);
} catch (err: any) {
    console.error("Error:", err.message);
}


  
  
/*
run:
  
"255 in base 2  = 11111111" 
"255 in base 8  = 377" 
"255 in base 16 = FF" 
"255 in base 36 = 73" 
  
*/

 



answered Feb 21 by avibootz
...