При объявлении переменной есть возможность добавить двоеточие и аннотацию типа, чтобы указать тип этой переменной. Пример
let name: string; let age: number;
В TypeScript имеются следующие встроенные аннотации типов (core types):
И еще два специальных значения:
Следующий фрагмент кода объявляет функцию, возвращающую либо string
либо null
function getName(): string | null { ... }
Для объявления функции не возвращающей значение, можем использовать void
:
function logErr(): void {...}
Вот еще пример с объявлением переменной и пустым дефолтным значением:
let name: string = null;
Типы в аргументах функции:
function calc(state: string, income: number, dependts: number): number {...}
В TypeScript, вы работаете с такими типами, как string
или number
и другие.
Important: string
и number
(etc.), НЕ String
, Number
etc.
Базовые типы в TypeScript всегда в нижнем регистре!
Давайте посмотрим на такой JavaScript объект:
const product = { id: 'abc1', price: 12.99, tags: ['great-offer', 'hot-and-new'], details: { title: 'Red Carpet', description: 'A great carpet - almost brand-new!' } }
Такой объект может быть объявлен следующим типом:
{ id: string; price: number; tags: string[]; details: { title: string; description: string; } }
Пример функции в TypeScript:
function add(n1: number, n2: number, showResult: boolean, phrase: string) { // if (typeof n1 !== 'number' || typeof n2 !== 'number') { // throw new Error('Incorrect input!'); // } const result = n1 + n2; if (showResult) { console.log(phrase + result); } else { return result; } } let number1: number; number1 = 5; const number2 = 2.8; const printResult = true; let resultPhrase = 'Result is: '; add(number1, number2, printResult, resultPhrase);