Mastering TypeScript

Programming

TypeScript adds static typing to JavaScript, making it more powerful and maintainable.

Basic Types

TypeScript provides several basic types:

let isDone: boolean = false;
let decimal: number = 6;
let color: string = "blue";
let list: number[] = [1, 2, 3];

Interfaces

Interfaces define contracts in your code:

interface User {
  name: string;
  age: number;
  email?: string; // Optional property
}

function greet(user: User) {
  return `Hello, ${user.name}!`;
}

Generics

Generics provide type safety with flexibility:

function identity<T>(arg: T): T {
  return arg;
}

let output = identity<string>("myString");

Advanced Types

Union Types

type StringOrNumber = string | number;

Intersection Types

type Employee = Person & { employeeId: number };

Best Practices

  1. Use interfaces for object shapes
  2. Leverage type inference
  3. Avoid any type when possible
  4. Use strict mode

Keep exploring TypeScript’s features to write better, type-safe code!