🛡

[TypeScript] インターフェース(interface)で読み取り専用にする

に公開

はじめに

TypeScriptをより深く理解したく下記書籍を読みました。
インターフェース(interface)で読み取り専用にするについて情報を整理したかったので、執筆します。

結論

1. 読み取り専用(readonly)を使用しない

let なので値の上書きが可能です

interface Writing {
  title: string;
}

let book: Writing = {
  title: "初めての",
};

book.title += "TypeScript";

2. 読み取り専用(readonly)を使用する

interface Writing {
  readonly title: string;
}

let book: Writing = {
  title: "初めての",
};

book.title += "TypeScript";

出力結果を確認する

Cannot assign to 'title' because it is a read-only property.
GitHubで編集を提案

Discussion