@technobuddha/library
Version:
A large library of useful functions
28 lines • 1.63 kB
JavaScript
/**
* Add leading zeros to a number to ensure a string of a minimum length
* @param input - The number to pad
* @param length - The minimum length of the resulting string
* @returns number as a string with leading zeros as needed
* @example
* ```typescript
* pad(5); // "05"
* pad(42, 4); // "0042"
* pad(-7, 3); // "-07"
* pad(NaN, 4); // " NaN"
* pad(Infinity, 6); // "Infinity"
* ```
* @group Math
* @category Verbalization
*/
export function pad(input, length = 2) {
if (Number.isNaN(input) || !Number.isFinite(input)) {
return input.toString().padStart(length, ' ');
}
else if (input < 0) {
return `-${Math.abs(input)
.toString()
.padStart(length - 1, '0')}`;
}
return input.toString().padStart(length, '0');
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3BhZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQWEsRUFBRSxNQUFNLEdBQUcsQ0FBQztJQUMzQyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbkQsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNoRCxDQUFDO1NBQU0sSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDckIsT0FBTyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO2FBQ3ZCLFFBQVEsRUFBRTthQUNWLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDaEQsQ0FBQyJ9