Function merge

  • Merges source to target recursively

    Type Parameters

    • T

    Parameters

    • target: unknown
    • source: unknown
    • Optional options: {
          arrayPolicy?: "overwrite" | "merge" | ((target, source) => unknown);
          skipNulls?: boolean;
      }
      • Optional arrayPolicy?: "overwrite" | "merge" | ((target, source) => unknown)

        Array merge policy, default is overwrite

        Available policies:

        • overwrite - always replace target array with source
        • merge - merge target and source array values
        • (target, source) => source - custom array merge function

        Default

        'overwrite'
        
      • Optional skipNulls?: boolean

        When source has null or undefined value, do not overwrite target

        Default

        false
        

    Returns T

    Example

    merge({ a: 1 }, { b: 2 }))
    // { a: 1, b: 2 }