JS Utils Kit
    Preparing search index...

    Function deepMerge

    • Deeply merges multiple objects into a new object.

      Later objects override properties from earlier ones.

      Type Parameters

      Parameters

      Returns T

      A new object containing the merged properties.

      • The merge is immutable input objects are never modified.
      • Primitive values from later objects override earlier values.
      • Nested objects are merged recursively.
      • Arrays are handled based on arrayStrategy.
      deepMerge(
      { a: 1 },
      { b: 2 }
      )

      // Result
      { a: 1, b: 2 }
      deepMerge(
      { config: { port: 3000 } },
      { config: { host: "localhost" } }
      )

      // Result
      { config: { port: 3000, host: "localhost" } }
      deepMerge(
      { items: [1, 2] },
      { items: [3] },
      { arrayStrategy: "concat" }
      )

      // Result
      { items: [1, 2, 3] }
      deepMerge(
      { items: [1, 2] },
      { items: [2, 3] },
      { arrayStrategy: "merge" }
      )

      // Result
      { items: [1, 2, 3] }