Skip to content

compactObject() function

すべての nullable 値を削除したオブジェクトを返します。

Signature:

typescript
export default function compactObject<T extends object>(
  obj: T,
): Merge<
  {
    [K in Extract<keyof T, RequiredKeys<T>>]: Extract<
      NonNullableEntries<T>,
      [K, any]
    >[1];
  },
  {
    [K in Extract<keyof T, OptionalKeys<T>>]?: Extract<
      NonNullableEntries<T>,
      [K, any]
    >[1];
  }
>;

Example

ts
const compacted = compactObject({ a: 1, b: "b", c: null, d: undefined });
// {a: 1, b: "b"}

Open Source Code

Released under the Apache-2.0 License.