JSFiddle - React, Tailwind, and code Playground
by russau
JavaScript
var hex = base32tohex('BQ2B4TZ6NNIF22TD2HSH32BYVU');
$('body').append('<br>');
$('body').append(hex);
function base32tohex(base32) {
var base32chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";
// 012345678901234567890
var bits = "";
var hex = "";
for (var i = 0; i < base32.length; i++) {
var val = base32chars.indexOf(base32.charAt(i).toUpperCase());
var fbits = leftpad(val.toString(2), 5, '0');
bits += fbits;
}
$('body').append(bits);
$('body').append('<br>');
for (var i = 0; i < bits.length; i+=4) {
var chunk = bits.substr(i, 4);
console.log("c" + chunk);
hex = parseInt(chunk, 2).toString(16) + hex;
}
return hex;
}
function leftpad(str, len, pad) {
if (len + 1 >= str.length) {
str = Array(len + 1 - str.length).join(pad) + str;
}
return str;
}