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

    Returns T | undefined

  • Type Parameters

    • T
    • Y

    Parameters

    • fn: () => T
    • def: Y

    Returns T | Y