I’m working on a little Flex Geohashing application which required me to convert a fractional Hex value to decimal and the net was no help. It’s a trivial algorithm, but it’s not the kind of thing I want to spend my time writing. So, Here you go, future!
public function fractionalHexToDecimal(hex:String):Number {
var total:Number = 0;
for(var i:int = 0; i < hex.length; i++) {
total += (parseInt("0x" + hex.charAt(i)) / Math.pow(16,i+1));
}
return total;
}
Only pass in the fractional. No "0x". No decimal point. Here's how it do.
fractionalHexToDecimal("1");
// 0.0625
fractionalHexToDecimal("0a");
// 0.0390625
fractionalHexToDecimal("db9318c2259923d0");
// 0.8577132677070023
Geohashing App forthcoming.