RivoCode

TypeScript in Depth · Interfaces & Types · Lesson 5 of 16

Optional and Readonly Properties

Concept

Optional and Readonly Properties

A question mark marks a property optional. readonly prevents it from being reassigned after creation.

By the end of this lesson
  • Explain the core idea behind Optional and Readonly Properties.
  • Predict output before running a change.
  • Test one realistic and one unusual input.
  • Use the result to make the next decision.
How to study this page
  1. 1. Read one concept.
  2. 2. Change the example.
  3. 3. Run, compare, and explain.
  4. 4. Complete the challenge below.
ExampleRunnable
interface Config {
  readonly id: string;
  timeout?: number;
}
Try it Yourself »
Self-check before continuing

Without looking at the example, describe what changes when you modify one input in Optional and Readonly Properties. Then reopen the editor and prove your explanation with a small test.

You are ready to continue when you can predict, test, and explain the result.

Your turn

Add an optional property to the Student interface from the previous lesson.

Loading editor…

Console

Output will appear here...