Các đối tượng bên trong đối tượng trong TypeScript
Các đối tượng có thể chứa bên trong chúng những đối tượng khác, được mô tả bởi các giao diện riêng biệt. Hãy xem qua các ví dụ.
Giả sử chúng ta có một giao diện mô tả một đối tượng thành phố:
interface City {
name: string
}
Chúng ta cũng sẽ tạo một giao diện mô tả người dùng. Trong đó, người dùng sẽ có tên, tuổi và thành phố, bản thân nó cũng là một đối tượng:
interface User {
name: string,
age: number,
city: City
}
Hãy tạo một đối tượng người dùng:
let city: City = {name: 'london'};
let user: User = {name: 'john', age: 30, city: city};
Không nhất thiết phải tạo một biến riêng cho thành phố:
let user: User = {
name: 'john',
age: 30,
city: {name: 'london'}
};
Cho đối tượng:
let employee = {
name: 'andrew',
position: {
name: 'programmer',
salary: 1000,
},
addr: {
country: 'belarus',
city: 'minsk'
}
};
Hãy tạo một giao diện mô tả cấu trúc của đối tượng này. Tách các đối tượng lồng nhau ra thành các giao diện riêng biệt.
Cho đối tượng:
let user: User = {
name: 'john',
age: 30,
parents: {
mother: {
name: 'jane',
age: 30,
parents: null
},
father: {
name: 'eric',
age: 30,
parents: null
}
}
}
Hãy tạo một giao diện mô tả cấu trúc của đối tượng này. Tách các đối tượng lồng nhau ra thành các giao diện riêng biệt.