UNPKG

javascript-binary-converter

Version:

A utility package to quickly handle and convert various Javascript binary objects

30 lines (23 loc) 938 B
import { FloatConversionConfig } from "../sharedTypes"; import { hexStringToBinary, hexStringToInteger, hexStringToFloat } from "../utils/hex"; import NumberConverter from "./NumberConverter"; /** * To avoid precision loss(toFloat64), separate handling of hex strings seems to be needed */ export default class HexStringConverter { numberConverter!:NumberConverter constructor(protected original: string) { this.numberConverter = new NumberConverter(parseInt(original,16)) } toBinary(){ return this.numberConverter.toBinary() } toInteger( { isSigned = false }: { isSigned?: boolean } = {}){ const decimal = hexStringToInteger(this.original,{isSigned}) return decimal } toFloat( { precision = 'SINGLE' }: FloatConversionConfig = {}){ const float = hexStringToFloat(this.original,{precision}) return float } }