Индексируемый тип для массивов в TypeScript
В TypeScript можно делать интерфейсы, которые будут задавать тип пары ключ-значение в массивах и объектах. Такой тип называется индексируемым.
Посмотрим на практике.
Давайте создадим интерфейс IArray
,
который будет задавать пару ключ-элемент
для массива.
Укажем, что ключом массива будет
число (тут у нас других вариантов
и нет), а значением - строка:
interface IArray {
[index: number]: string;
}
Теперь объявим переменную arr
с нашим индексированным типом:
let arr: IArray;
Зададим нашей переменной значение в виде массива строк:
let arr: IArray = ['a', 'b', 'c'];
Теперь, если в качестве элементов массива сделать числа, то TypeScript выдаст ошибку:
let arr: IArray = [1, 2, 3]; // ошибка
Создайте интерфейс, описывающий массив со значениями в виде чисел.