ChemPal Documentation - v1.6.0
    Preparing search index...

    Function toFiniteNumber

    • Parse a raw string (typically an input's value) into a finite number, returning undefined for empty or malformed input. Uses Number() rather than parseFloat, which would silently accept trailing garbage and turn "12abc" into 12. The empty check is explicit because Number("") and Number(" ") are both 0, not NaN.

      Parameters

      • raw: string

        The raw string to parse.

      Returns undefined | number

      The parsed number, or undefined when the input is blank or not a finite number.

      toFiniteNumber("12.5");  // => 12.5
      toFiniteNumber("12abc"); // => undefined
      toFiniteNumber(""); // => undefined
      export function toFiniteNumber(raw: string): number | undefined {
      if (raw.trim() === '') {
      return undefined;
      }
      const value = Number(raw);
      return Number.isFinite(value) ? value : undefined;
      }