Safely execute a function, return its return value or default value if the function throws.

function to run

default value

safe(() => JSON.parse(unknownString), null); // if unknownString is not a valid JSON, null will be returned
safe(() => trySomethingComplicated(), defaultValue); // if trySomethingComplicated throws, defaultValue will be returned
  • Type Parameters

    • T

    Parameters

    • fn: (() => T)
        • (): T
        • Returns T

    Returns T | undefined

  • Type Parameters

    • T
    • Y

    Parameters

    • fn: (() => T)
        • (): T
        • Returns T

    • def: Y

    Returns T | Y