Obiekty w obiektach w TypeScript
Obiekty mogą zawierać w sobie inne obiekty, opisane oddzielnymi interfejsami. Przyjrzyjmy się przykładom.
Załóżmy, że mamy interfejs opisujący obiekt z miastem:
interface City {
name: string
}
Stwórzmy również interfejs opisujący użytkownika. Przy tym użytkownik będzie miał imię, wiek i miasto, które z kolei jest obiektem:
interface User {
name: string,
age: number,
city: City
}
Stwórzmy obiekt z użytkownikiem:
let city: City = {name: 'london'};
let user: User = {name: 'john', age: 30, city: city};
Nie jest konieczne tworzenie oddzielnej zmiennej dla miasta:
let user: User = {
name: 'john',
age: 30,
city: {name: 'london'}
};
Dany jest obiekt:
let employee {
name: 'andrew',
potision: {
name: 'programmer'
salary: 1000,
},
addr: {
country: 'belarus',
city: 'minsk'
}
};
Stwórz interfejs opisujący strukturę tego obiektu. Wynieś zagnieżdżone obiekty do oddzielnych interfejsów.
Dany jest obiekt:
let user: User = {
name: 'john',
age: 30,
parents: {
mother: {
name: 'jane',
age: 30,
parents: null
},
father: {
name: 'eric',
age: 30,
parents: null
}
}
}
Stwórz interfejs opisujący strukturę tego obiektu. Wynieś zagnieżdżone obiekty do oddzielnych interfejsów.