TS exclude keys with dot notation

TS Exclude Keys with Dot Notation

When working with TypeScript, you may come across situations where you need to exclude keys with dot notation. This can be useful when you want to filter out certain properties from an object or when you want to create a new object without specific keys.

Solution 1: Using the Omit Utility Type

One way to exclude keys with dot notation is by using the Omit utility type provided by TypeScript. The Omit utility type allows you to create a new type by excluding specific keys from an existing type.

Here’s an example:


    type MyType = {
      foo: string;
      bar: number;
      nested: {
        baz: boolean;
      };
    };
    
    type ExcludeKeys = Omit;
    
    const obj: ExcludeKeys = {
      foo: 'Hello',
      bar: 42,
    };
  

In this example, we have a type MyType with three properties: foo, bar, and nested. The nested property has a nested object with a property baz. We want to exclude the nested.baz key from the new type ExcludeKeys.

The resulting ExcludeKeys type will only have the foo and bar properties, excluding nested.baz. We can then create an object obj of type ExcludeKeys with the excluded keys.

Solution 2: Using Object Destructuring

Another way to exclude keys with dot notation is by using object destructuring. With object destructuring, you can create a new object without specific keys from an existing object.

Here’s an example:


    const obj = {
      foo: 'Hello',
      bar: 42,
      nested: {
        baz: true,
      },
    };
    
    const { nested: { baz, ...rest }, ...newObj } = obj;
  

In this example, we have an object obj with three properties: foo, bar, and nested. We want to exclude the nested.baz key from the new object newObj.

By using object destructuring, we can assign the value of nested.baz to a variable baz and exclude it from the rest of the nested object by using the ...rest syntax. We can also exclude the entire nested property from the new object newObj.

Conclusion

Excluding keys with dot notation in TypeScript can be achieved using the Omit utility type or object destructuring. The Omit utility type allows you to create a new type by excluding specific keys, while object destructuring allows you to create a new object without specific keys.

Choose the solution that best fits your needs and implement it in your TypeScript code to exclude keys with dot notation.


Posted

in

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *