Skip to content

Latest commit

 

History

History
27 lines (20 loc) · 2.91 KB

File metadata and controls

27 lines (20 loc) · 2.91 KB

Readonly 2 中級 #readonly #object-keys

by Anthony Fu @antfu

挑戦する    English 简体中文 한국어 Português (BR)

2つの型引数TKを取るMyReadonly2<T, K>を実装します。

Kが指定されている場合は、Tの中のKのプロパティのみを読み取り専用にします。Kが指定されていない場合は、通常のReadonly<T>と同様に、すべてのプロパティを読み取り専用にします。

例えば

interface Todo {
  title: string
  description: string
  completed: boolean
}

const todo: MyReadonly2<Todo, 'title' | 'description'> = {
  title: "Hey",
  description: "foobar",
  completed: false,
}

todo.title = "Hello" // Error: cannot reassign a readonly property
todo.description = "barFoo" // Error: cannot reassign a readonly property
todo.completed = true // OK

戻る 解答を共有 解答を確認

関連する課題

7・Readonly 9・Deep Readonly