Oggetti in oggetti in TypeScript

Gli oggetti possono contenere altri oggetti, descritti da interfacce separate. Diamo un'occhiata ad alcuni esempi.

Supponiamo di avere un'interfaccia che descrive un oggetto con una città:

typescriptinterface City {
  name: string
}

Creiamo anche un'interfaccia che descriva un utente. L'utente avrà un nome, un'età e una città, che a sua volta è un oggetto:

typescriptinterface User {
  name: string,
  age: number,
  city: City
}

Creiamo un oggetto con un utente:

typescriptlet city: City = {name: 'london'};
let user: User = {name: 'john', age: 30, city: city};

Non è necessario creare una variabile separata per la città:

typescriptlet user: User = {
  name: 'john',
  age: 30,
  city: {name: 'london'}
};
Задание 1

Dato l'oggetto:

typescriptlet employee {
  name: 'andrew',
  potision: {
    name: 'programmer'
    salary: 1000,
  },
  addr: {
    country: 'belarus',
    city: 'minsk'
  }
};

Crea un'interfaccia che descriva la struttura di questo oggetto. Estrai gli oggetti annidati in interfacce separate.

Задание 2

Dato l'oggetto:

typescriptlet user: User = {
  name: 'john',
  age: 30,
  parents: {
    mother: {
      name: 'jane',
      age: 30,
      parents: null
    },
    father: {
      name: 'eric',
      age: 30,
      parents: null
    }
  }
}

Crea un'interfaccia che descriva la struttura di questo oggetto. Estrai gli oggetti annidati in interfacce separate.