В этом руководстве вы узнаете о типе данных TypeScript array
и его основных операциях.
Что такое тип Array(массив) в TypeScript?
TypeScript array
— это упорядоченный список данных. Чтобы объявить массив, содержащий значения определенного типа, вы используете следующий синтаксис:
let arrayName: type[];
Например, следующий пример объявляет массив строк:
let skills: string[];
И вы можете добавить одну или несколько строк в массив:
skills[0] = "Problem Solving"; skills[1] = "Programming";
или используйте метод push()
:
skills.push('Software Design');
Следующий код объявляет переменную и присваивает ей массив строк:
let skills = ['Problem Sovling','Software Design','Programming'];
В этом примере TypeScript выводит массив skills
как массив строк.
let skills: string[]; skills = ['Problem Sovling','Software Design','Programming'];
Как только вы определите массив определенного типа, TypeScript предотвратит добавление в массив несовместимых значений.
Следующий пример вызовет ошибку:
skills.push(100);
… потому что мы пытаемся добавить число в массив строк.
Ошибка:
Argument of type 'number' is not assignable to parameter of type 'string'.
Когда вы извлекаете элемент из массива, TypeScript может выполнять вывод типа. Например:
let skill = skills[0]; console.log(typeof(skill));
Выход:
string
В этом примере мы извлекаем первый элемент массива skills
и присваиваем его переменной skill
.
Поскольку элемент массива строк является строкой, TypeScript определяет тип переменной skill
как строку, как показано в выводе.
Свойства и методы массива TypeScript
Массивы TypeScript могут обращаться к свойствам и методам JavaScript. Например, в следующем примере свойство length используется для получения номера элемента в массиве:
let series = [1, 2, 3]; console.log(series.length); // 3
И вы можете использовать все полезные методы массива, такие как forEach()
, map()
, reduce()
и filter()
. Например:
let series = [1, 2, 3]; let doubleIt = series.map(e => e* 2); console.log(doubleIt);
Выход:
[ 2, 4, 6 ]
Хранение значений смешанных типов
Ниже показано, как объявить массив, содержащий как строки, так и числа:
let scores = ['Programming', 5, 'Software Design', 4];
В этом случае TypeScript выводит массив scores
как массив string | number
.
Это эквивалентно следующему:
let scores :(string | number)[]; scores = ['Programming', 5, 'Software Design', 4];
- В TypeScript массив — это упорядоченный список значений. Массив может хранить значения смешанного типа.
- Чтобы объявить массив определенного типа, используется синтаксис
let arr: type[]
.