Mastering TypeScript Data Types: A Complete Guide

TypeScript Data Types TypeScript introduces a powerful type system on top of JavaScript, allowing developers to write safer and more predictable code. Understanding data types is crucial for leveraging TypeScript's full potential. 1. Primitive Types String (string) Used for textual data. let username: string = "John Doe"; let greeting: string = `Hello, ${username}`; Number (number) Represents all numbers, including integers and floating-point values. let age: number = 25; let price: number = 99.99; Boolean (boolean) Represents true/false values. let isLoggedIn: boolean = true; Null (null) & Undefined (undefined) Both represent the absence of a value. let emptyValue: null = null; let notAssigned: undefined = undefined; 2. Complex Data Types Array (array) Used to store multiple values of a specific type. let numbers: number[] = [1, 2, 3, 4, 5]; let fruits: Array = ["Apple", "Banana", "Mango"]; Tuple (tuple) An array with a fixed number of elements with different types. let person: [string, number] = ["Alice", 30]; Enum (enum) Defines a set of named constants. enum Color { Red, Green, Blue, } let favoriteColor: Color = Color.Green; Object (object) Defines structured data with properties. let user: { name: string; age: number } = { name: "John", age: 25 }; 3. Special Types Any (any) Allows assigning any type but removes type safety. let randomValue: any = "Hello"; randomValue = 42; Unknown (unknown) Similar to any, but requires type checking before use. let data: unknown = "Some data"; if (typeof data === "string") { console.log(data.toUpperCase()); } Void (void) Used for functions that do not return a value. function logMessage(message: string): void { console.log(message); } Never (never) Used for functions that never return (e.g., errors or infinite loops). function throwError(message: string): never { throw new Error(message); }

Mar 22, 2025 - 15:54
 0
Mastering TypeScript Data Types: A Complete Guide

TypeScript Data Types

TypeScript introduces a powerful type system on top of JavaScript, allowing developers to write safer and more predictable code. Understanding data types is crucial for leveraging TypeScript's full potential.

1. Primitive Types

String (string)

Used for textual data.

let username: string = "John Doe";
let greeting: string = `Hello, ${username}`;

Number (number)

Represents all numbers, including integers and floating-point values.

let age: number = 25;
let price: number = 99.99;

Boolean (boolean)

Represents true/false values.

let isLoggedIn: boolean = true;

Null (null) & Undefined (undefined)

Both represent the absence of a value.

let emptyValue: null = null;
let notAssigned: undefined = undefined;

2. Complex Data Types

Array (array)

Used to store multiple values of a specific type.

let numbers: number[] = [1, 2, 3, 4, 5];
let fruits: Array<string> = ["Apple", "Banana", "Mango"];

Tuple (tuple)

An array with a fixed number of elements with different types.

let person: [string, number] = ["Alice", 30];

Enum (enum)

Defines a set of named constants.

enum Color {
  Red,
  Green,
  Blue,
}
let favoriteColor: Color = Color.Green;

Object (object)

Defines structured data with properties.

let user: { name: string; age: number } = { name: "John", age: 25 };

3. Special Types

Any (any)

Allows assigning any type but removes type safety.

let randomValue: any = "Hello";
randomValue = 42;

Unknown (unknown)

Similar to any, but requires type checking before use.

let data: unknown = "Some data";
if (typeof data === "string") {
  console.log(data.toUpperCase());
}

Void (void)

Used for functions that do not return a value.

function logMessage(message: string): void {
  console.log(message);
}

Never (never)

Used for functions that never return (e.g., errors or infinite loops).

function throwError(message: string): never {
  throw new Error(message);
}