Skip to content

asNumber

Module Export

text |> number | nothing

Turns a text into a number. If the text can't be parsed as a number, returns nothing.

Example

import { asNumber } from 'text'
from '123' asNumber
// Returns: 123
from '123.45' asNumber
// Returns: 123.45
from '-42' asNumber
// Returns: -42
from '1.23E+2' asNumber
// Returns: 123
from 'not a number' asNumber
// Returns: nothing
from '' asNumber
// Returns: nothing

Notes

  • Supports standard decimal numbers (positive and negative)
  • Handles whitespace around numbers (e.g., ' 123 ' becomes 123)
  • Supports scientific notation (e.g., '1.23E+2' becomes 123)
  • Returns nothing for invalid input (empty strings, non-numeric text, etc.)
  • Uses invariant culture for consistent parsing across different locales