We have already learned about some basic types in the TypeScript language that we usually meet in other high-level languages. In this section, we’ll look at some advanced types that will help us during Angular development.
Partial
The Partial
type is used when we want to create an object from an interface but include some of its properties:
interface Hero {
name: string;
power: number;
}
const hero: Partial<Hero> = {
name: 'Boothstomper'
}
In the preceding snippet, we can see that the hero
object does not include power
in its properties.
Record
Some languages, such as C#, have a reserved type when defining a key-value pair object or dictionary, as it is known. In TypeScript, there is no such thing. If we want to define such a type, we declare it as follows:
interface Hero {
powers: {
[key: string]: number
}
}
However, the preceding syntax is not clear. In a real-world scenario, interfaces...