Variables
Const float
float
: (prec
: number) => Stringer<number> = memoizeJ((prec) => (x: number) =>nanOrInf(x) || x.toFixed(prec))Const floatFixedWidth
float
FixedWidth: (width: number, prec?: undefined | number) => Stringer<number> = memoizeJ((width, prec = 3) => {const l = width - prec - 1;const pl = Math.pow(10, l);const pln = -Math.pow(10, l - 1);const pr = Math.pow(10, -(prec - 1));const pad = padLeft(width);return (x: number) => {const ax = Math.abs(x);return pad(nanOrInf(x) ||(x === 0? "0": ax < pr || ax >= pl? exp(x, width): x.toFixed(prec - (x < pln ? 1 : 0))));};})Type declaration
- (width: number, prec?: undefined | number): Stringer<number>
Parameters
width: number
Optional prec: undefined | number
Functions
Const exp
- exp(x: number, w: number): string
Const nanOrInf
- nanOrInf(x: number): undefined | "NaN" | "+∞" | "-∞"
Parameters
Returns undefined | "NaN" | "+∞" | "-∞"
Returns Stringer which formats numbers to given precision. Exceptions:
number of fractional digits
function