В TypeScript массивы могут быть определены с использованием определенных типов, включая интерфейсы. Это позволяет нам создавать массивы, содержащие объекты, придерживающиеся определенной структуры интерфейса. В этой статье блога мы рассмотрим различные методы и приемы работы с массивами интерфейсов, а также приведем примеры кода, иллюстрирующие их использование.
- Инициализация массива интерфейсов:
 Чтобы создать массив интерфейсов, вы можете объявить массив и указать интерфейс в качестве типа. Вот пример:
interface Person {
  name: string;
  age: number;
}
const people: Person[] = [
  { name: "John", age: 25 },
  { name: "Jane", age: 30 },
];- Доступ к элементам массива:
 Вы можете получить доступ к отдельным элементам массива интерфейсов, используя их индекс. Например:
console.log(people[0].name); // Output: "John"
console.log(people[1].age); // Output: 30- Итерация по массиву.
 Чтобы перебрать массив интерфейсов, вы можете использовать различные методы итерации, такие какfor...ofилиforEach. Вот пример использованияforEach:
people.forEach((person) => {
  console.log(person.name);
});- Добавление элементов в массив:
 Чтобы добавить элементы в массив интерфейсов, вы можете использовать методpush. Вот пример:
people.push({ name: "Mike", age: 35 });- Фильтрация элементов массива.
 Вы можете фильтровать массив интерфейсов на основе определенных критериев, используя методfilter. Например:
const adults = people.filter((person) => person.age >= 18);
console.log(adults); // Output: [{ name: "John", age: 25 }, { name: "Jane", age: 30 }, { name: "Mike", age: 35 }]- Сопоставление элементов массива.
 Методmapпозволяет преобразовать каждый элемент массива интерфейсов в новое значение. Вот пример:
const names = people.map((person) => person.name);
console.log(names); // Output: ["John", "Jane", "Mike"]- Сортировка элементов массива.
 Чтобы отсортировать массив интерфейсов на основе определенного свойства, вы можете использовать методsort. Вот пример:
const sortedByName = people.sort((a, b) => a.name.localeCompare(b.name));
console.log(sortedByName);Работа с массивами интерфейсов в TypeScript обеспечивает безопасность типов и позволяет структурировать обработку данных. В этой статье мы рассмотрели несколько основных методов, включая инициализацию, доступ к элементам, итерацию, добавление элементов, фильтрацию, сопоставление и сортировку. Используя эти методы, вы можете создавать надежные приложения, обеспечивая при этом правильность типов и удобство сопровождения.