LearnThatStack Ace your next interview
TypeScript · question
Question 8 of 102

What are optional properties and how do you define them?

beginner
← All TypeScript questions
Re-explain

An optional property is one an object may leave out. You mark it with ? after the name, and its type becomes the declared type or undefined.

interface Config {
  apiUrl: string;
  timeout?: number; // Optional
  retries?: number; // Optional
  debug?: boolean; // Optional
}

const config: Config = {
  apiUrl: "https://api.example.com"
  // Other properties can be omitted
};

When you read config.timeout, its type is number | undefined, so the compiler makes you handle the missing case. Use ?? to supply a default value, or ?. to read deeper into a property that may be missing.

Function parameters can be optional with the same ?, as long as they come after the required ones.

Rewriting in plainer words…

This answer doesn't lend itself to a diagram - it reads best . No credits were charged.

Why there's no diagram: “”

The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓

The diagram below the answer is the concept . Jump to it ↓

Tailored explanation · switch back to · ·
What should the new diagram focus on?
How well did you know this?
AI:

Saved in this browser - sign in to keep your review list.

How should your speech become text?

Listening… your words appear above as you speak - tap Stop when you're done.

Recording · cr - tap Stop & transcribe when you're done.

Transcribing with AI…

Voice:

Keep going - a few more words and AI can grade it.

Interview lens

Likely follow-ups, what you can say, and the weak answers to avoid.

Sign in free to open it Free account - the lens opens as soon as you're back.

Want a quick review of the fundamentals? See the TypeScript cheatsheet.

← Back to all TypeScript questions
Pro · $10/mo

86 of 102 TypeScript answers are in Pro.

Full answers, code samples, and AI explanations that go simpler or deeper. Cancel anytime.

  • Full answers + code
  • AI explanations, simpler or deeper
  • 1,000 AI credits / month
  • Cancel anytime