In this blog post, we explore how we can compute with types at compile time in TypeScript.
Note that the focus of this post is on learning how to compute with types. Therefore, we’ll use literal types a lot and the examples are less practically relevant. Future blog posts will cover real-world use cases.
The ECMAScript proposal “Logical assignment operators” (by Justin Ridgewell and Hemanth HM) introduces the following compound assignment operators:
a ||= b
a &&= b
a ??= b
Data validation means ensuring that data has the desired structure and content.
With TypeScript, validation becomes relevant when we receive external data such as:
In these cases, we expect the data to fit static types we have, but we can’t be sure. Contrast that with data we create ourselves, where TypeScript continuously checks that everything is correct.
This blog post explains how to validate external data in TypeScript.
In TypeScript, a value can have a type that is too general for some operations – for example, a union type. This blog post answers the following questions:
This blog post is about type assertions in TypeScript, which are related to type casts in other languages and performed via the as
operator.
any
and unknown
in TypeScriptIn TypeScript, any
and unknown
are types that contain all values. In this blog post, we examine how they work.
In this blog post, we take a first look at the ECMAScript proposal “Record & Tuple” (by Robin Ricard and Rick Button). This proposal adds two kinds of compound primitive values to JavaScript:
This blog post describes how to create web apps via TypeScript and webpack. We will only be using the DOM API, not a particular frontend framework. The repository ts-demo-webpack
with the files can be downloaded from GitHub.
This blog post gives the bird’s eye view of how TypeScript works: What is the structure of a typical TypeScript project? What is compiled and how? How can we use IDEs to write TypeScript?
This post is meant to be read before learning how to write TypeScript code (material for doing that is listed at the end).
This blog post gives an overview of strategies for migrating code bases from JavaScript to TypeScript. It also mentions material for further reading.