首页 > 其他分享 >[Typescript] 2. Easy -- readonly

[Typescript] 2. Easy -- readonly

时间:2022-08-31 15:37:06浏览次数:66  
标签:Typescript string _____________ title -- readonly type description

For example:

interface Todo {
  title: string
  description: string
}

const todo: MyReadonly<Todo> = {
  title: "Hey",
  description: "foobar"
}

todo.title = "Hello" // Error: cannot reassign a readonly property
todo.description = "barFoo" // Error: cannot reassign a readonly property
/* _____________ Your Code Here _____________ */

type MyReadonly<T> = {
  readonly [K in keyof T]: T[K]
}


/* _____________ Test Cases _____________ */
import type { Equal, Expect } from '@type-challenges/utils'

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

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

标签:Typescript,string,_____________,title,--,readonly,type,description
From: https://www.cnblogs.com/Answer1215/p/16643268.html

相关文章

  • 了解冯.诺依曼结构
    了解冯.诺依曼结构1946年,第一台计算机ENIAC诞生,人类进入计算机时代,后来,美籍匈牙利数学家:冯.诺依曼提出了计算机“存储程序”的计算机设计理念,即将计算机指令进行编码后存......
  • MybatisPlus拦截器打印完整SQL、分页、自动填充处理
    MybatisPlus拦截器打印完整SQLMybatisPlus虽然也自带了一个打印SQL的配置,但是不方便查看,也没有时间统计mybatis-plus:configuration:log-impl:org.apache.ib......
  • 如何构建一款自定义的开源微服务架构?
    如今,竞争越来越激烈,很多企业随着业务需求变化得越来越快,急需要找到一款高效又快速的软件交付方式,以便实现办公高效化。在众多软件中,开源微服务架构有其自身的优势特点,可以......
  • APISpace IP归属地API
    今天我就来和大家说一说APISpace的IP归属地API,它可以根据IP地址查询归属地信息,包含国家、省、市、区县和运营商等信息。IP归属地的应用领域有哪些呢?应用领域1.网络......
  • 单例陷阱——双重检查锁中的指令重排问题
    最近在学习并发方面的知识,发现双重检查锁使用不当也并非绝对安全,在这里分享一下。单例回顾首先我们回顾一下最简单的单例模式是怎样的?/***单例模式一:懒汉式(线程安全)*/......
  • 气象相关,转换风力,风向的工具类
    importjava.util.LinkedHashMap;importjava.util.Map;/***气象工具**/publicclassWeatherUtil{//风力privatestaticfinalMap<String,Ran......
  • hadoop小结
    Hadoop是一个适合海量数据的分布式存储和分布式计算的平台主要有以下功能:HadoopCommon:基础型功能HadoopDistributedFileSystem(HDFS™):一种分布式文件系统,可提供对......
  • verilog 中的三段式状态机
    抄的:https://zhuanlan.zhihu.com/p/431143109一段式状态机特点:最主要的特征是只有一个always块。在这个always块内既描述状态转移,又含有组合逻辑输入/输出,当前状态用......
  • Dapper.LiteSql 一款基于Dapper的ORM
    写了这么久,代码没有越写越多,代码量的数量级没变,用SourceCounter代码统计工具统计了一下,一共4000多行代码。ADO.NET换成Dapper后,我迷茫了,因为LiteSql做的工作变少了,它存在......
  • 如何在VMware上安装Linux系统(CentOS 7)
    1.创建新的虚拟机 2.选择安装类型(推荐典型) 3.选择稍后安装操作系统 4.选择操作系统(linux)及版本(CentOS) 5.虚拟机的名称以及虚拟机的存储位置(建议不要有中......