Skip to main content

Class: NumberUtils

Defined in: utils/NumberUtils.ts:9

Utility methods for coercing untrusted values to numbers

Numbers, bigints and non-blank strings are accepted; everything else, and everything that does not coerce to a finite number, is rejected. The tryParse* methods report rejection by returning undefined, the parse* methods by throwing.

Constructors

Constructor

new NumberUtils(): NumberUtils

Returns

NumberUtils

Methods

parseFinite()

static parseFinite(value): number

Defined in: utils/NumberUtils.ts:17

Parses a value as a finite number

Parameters

value

unknown

The value to parse

Returns

number

The parsed number

Throws

Error if the value is not a finite number


parseSafeInt()

static parseSafeInt(value): number

Defined in: utils/NumberUtils.ts:32

Parses a value as a safe integer

Parameters

value

unknown

The value to parse

Returns

number

The parsed integer

Throws

Error if the value is not a safe integer


tryParseFinite()

static tryParseFinite(value, options?): number | undefined

Defined in: utils/NumberUtils.ts:52

Parses a value as a finite number, without throwing

A bigint outside of the safe integer range loses precision when converted: by default this is only warned about, requireSafeBigInt rejects it.

Parameters

value

unknown

The value to parse

options?

Set requireSafeBigInt to reject bigints that are outside of the safe integer range, rather than converting them with a warning

requireSafeBigInt?

boolean

Returns

number | undefined

The parsed number, or undefined if the value is not a finite number


tryParseSafeInt()

static tryParseSafeInt(value): number | undefined

Defined in: utils/NumberUtils.ts:85

Parses a value as a safe integer, without throwing

Parameters

value

unknown

The value to parse

Returns

number | undefined

The parsed integer, or undefined if the value is not a safe integer