2022-9-4

41 阅读1分钟

算法

  1. 注意保留断裂后的相继节点
  2. 注意边界判断,最后返回最后一个节点

ts体操

利用mapping修饰符和readonly属性

// ============= Test Cases =============
import type { Equal, Expect } from './test-utils'

type cases = [
  Expect<Equal<MyReadonly<Todo1>, Readonly<Todo1>>>,
]

interface Todo1 {
  title: string
  description: string
  completed: boolean
  meta: {
    author: string
  }
}


// ============= Your Code Here =============
type MyReadonly<T> = {
  readonly [property in keyof T]: T[property]
}