Что такое TypeScript?

В некотором контексте JavaScript - это язык программирования сценариев, который обычно используется для создания динамических веб-страниц и запускается в браузере или на сервере.

TypeScript - это надмножество JavaScript, которое добавляет в язык необязательную статическую типизацию. Он обратно совместим с JavaScript.

TypeScript имеет тот же синтаксис, что и JS, но он позволяет вам добавлять типы к значениям, писать классы и интерфейсы - это, по сути, оболочка для JS, и перед запуском он транслируется в простой JS.

Почему именно TypeScript?

Читаемость

TypeScript позволяет добавлять статическую типизацию к переменным и параметрам функций. что улучшает читаемость кода.

Взгляните на следующую calculateDimensions функцию JavaScript - неясно, какой тип аргументов она будет принимать и какой тип вернет:

TypeScript позволяет нам явно указывать типы параметров и возвращаемые типы, что значительно упрощает понимание кода с первого взгляда:

Тип Безопасность

JavaScript имеет динамическую типизацию, то есть вы не указываете типы для переменных - вместо этого типы назначаются динамически на основе значений, присвоенных переменным.

Это означает, что если вы используете переменную не так, как предполагается, для ее типа, вы узнаете об этом только во время выполнения. Например, в приведенном ниже коде я пытаюсь вызвать addNumbers со строкой 'abc', а JS выдает TypeError.

TypeScript добавляет к коду безопасность типов, поэтому ошибки такого типа перехватываются во время транспиляции, что означает меньшее количество ошибок времени выполнения. Итак, с тем же кодом, что и выше, если я укажу, что numbers должен быть массивом numbers (numbers: number[]), я обнаружу, что существует проблема, пока мой код переносится - Argument of type 'string' is not assignable to parameter of type 'number[]'.

Лучшие инструменты

Использование TypeScript дает преимущества множества инструментов разработки. Многие IDE поставляются с такими инструментами, как проверка статического типа и автоматические исправления. Вот некоторые IDE с хорошей поддержкой:

Некоторые основы

В этом разделе будут подробно описаны некоторые из основных функций, которые позволяет вам иметь TypeScript - аннотации типов, определяющие ваши собственные типы.

Аннотации типов

Мы можем указать тип переменной, используя синтаксис : Type. Разрешены все примитивные типы данных JavaScript - number, string, boolean, null и undefined. Вот пример:

Аннотации типов могут существовать в свойствах класса, переменных или параметрах функции:

Определите свои собственные типы

TypeScript также позволяет вам определять свой собственный Type. В этом примере мы определяем тип Point и объявляем переменную point из этого нового типа.

Расширенные типы

Помимо базовых типов, TypeScript предлагает широкий спектр более сложных функций, включая:

  • Типы Пересечение и Объединение
  • Введите Guards, используя instanceof или typeof.
  • Условные типы

Я не буду вдаваться в подробности в этом блоге, но вы можете прочитать о них здесь: https://www.typescriptlang.org/docs/handbook/advanced-types.html

Как я могу это использовать?

TypeScript можно установить с помощью диспетчера пакетов NPM:

npm install -g typescript

Затем вы можете написать TypeScript, создав плитку с расширением .ts и используя команду tsc для преобразования кода в JavaScript.

// Write your code in a .ts file
vim hello.ts
// Transpile the file
tsc hello.ts // This creates a new file called hello.js

Ссылки

Надеюсь, это помогло!