TypeScript — это строго типизированная расширенная версия JavaScript, которая расширяет возможности разработки, предоставляя возможности статической типизации. Одной из общих синтаксических особенностей TypeScript является использование квадратных скобок в различных контекстах. В этой статье мы рассмотрим различные сценарии использования квадратных скобок в TypeScript, а также примеры кода, чтобы помочь вам лучше понять их назначение и использование.
- Аннотации типов для массивов:
Квадратные скобки используются для определения типа массива в TypeScript. Вот пример:
let numbers: number[] = [1, 2, 3, 4, 5];
В этом примере number[]обозначает массив чисел. Вы можете заменить numberна любой другой тип, чтобы определить массивы разных типов.
- Индексирование массива.
Квадратные скобки также используются для доступа к отдельным элементам массива. Рассмотрим следующий пример:
let fruits: string[] = ["apple", "banana", "orange"];
let firstFruit: string = fruits[0];
console.log(firstFruit); // Output: "apple"
Здесь fruits[0]извлекает первый элемент массива fruits.
- Выведение типа с помощью индексных подписей.
Квадратные скобки можно использовать в сочетании с индексными подписями для достижения гибкой типизации. Сигнатуры индексов позволяют определять типы имен динамических свойств. Вот пример:
interface FruitPriceMap {
[fruit: string]: number;
}
let prices: FruitPriceMap = {
apple: 0.5,
banana: 0.25,
};
console.log(prices["apple"]); // Output: 0.5
В этом примере мы определяем интерфейс FruitPriceMapс сигнатурой индекса [fruit: string]: number. Это позволяет нам создать объект prices, где ключами являются строки (представляющие названия фруктов), а значениями — числа (представляющие цены). Затем мы можем получить доступ к цене конкретного фрукта, используя квадратные скобки prices["apple"].
В TypeScript квадратные скобки имеют различное применение, включая определение типа массивов, доступ к элементам массива по индексу и обеспечение гибкой типизации с помощью индексных подписей. Понимание этих различных контекстов и соответствующих им примеров кода поможет вам писать более надежный и типобезопасный код TypeScript.