Skip to main content

Объекты

I способ (inline)

const settings: {
color: string;
delay: number;
retry: boolean;
} = {
color: '#F00',
delay: 2000,
retry: false
};

II способ (type)

type TSettings = {
color: string;
delay: number;
retry: boolean;
}

const settings: TSettings = {
color: '#F00',
delay: 2000,
retry: false
};

III способ (interface)

interface ISettings {
color: string;
delay: number;
retry: boolean;
}

const settings: ISettings = {
color: '#F00',
delay: 2000,
retry: false,
};


Record

Для объектов с заранее неизвестным набором полей

export type TRecord = Record<string, number>;

// или такая запись (через key)
export type TRecord = Record<[key: string], number>;

const a: TRecord = {
a: 1,
b: 2,
c: 3,
}

Вложенные объекты

interface IField {
name: string;
actual: boolean;

// вложенный объект
hubs?: {
[key: number]: boolean
};

}