首页 > 其他分享 >基础

基础

时间:2023-02-02 15:23:56浏览次数:43  
标签:string age Required 基础 Key hobby name

泛型工具

Required

将类型的属性变成必选

interface Person {
  name?: string;
  age?: number;
  hobby?: string[];
}

type Required<T> = {
  [Key in keyof T]-?: T[Key];
};

const user: Required<Person> = {
  name: "树哥",
  age: 18,
  hobby: ["code"],
};

在这里 -? 是一个非常有意思的写法,相当于把可选去掉

Partial

Exclude

Extract

Readonly

Record

Pick

Omit

NonNullable

ReturnType

Parameters

标签:string,age,Required,基础,Key,hobby,name
From: https://www.cnblogs.com/jun-jiang/p/17086114.html

相关文章

  • 数据库:事务基础知识
    事务概述存储引擎支持情况可以使用SHOWENGINES命令查看Mysql支持事务的存储引擎有哪些。Mysql中只有InnoDB支持事务。基本概念事务:一组逻辑操作单元,使数据从一种状......
  • pandas 基础
    安装及导入安装可以使用pip安装pipinstallpandas导入importpandasaspd数据结构SeriesSeries是一种类似于一维数组的对象,它由一组数据(各种Numpy数据类......
  • Java基础-浅拷贝和深拷贝
    浅拷贝浅拷贝会在堆上创建一个新的对象,如果原对象的属性是一个引用类型,拷贝的内部对象是原对象内部对象的引用地址,即原对象和拷贝对象用的是同一个内部对象。classInner......
  • 《区块链基础知识25讲》-第六讲-所有权
    区块链可以用来管理和区分所有权所有权证明三要素对所有者的证明对事物被拥有的证明提供一个所有者与事物之间的连接区块链是一个能够被任何人访问,拥有类似账本功能的巨大去......
  • 《区块链基础知识25讲》-第七讲-双花问题
    三种含义复制数字产品引起的问题去中心化的点对点分布式账本种可能存在的问题完全分布式点对点系统种违反完备性的一个例子双花问题可以看作是去中心化点对点系统中数据一......
  • Zookeeper算法基础
    第一章算法基础思考:Zookeeper是如何保证数据一致性的?这也是困扰分布式系统框架的一个难题。1.1拜占庭将军问题拜占庭将军问题是一个协议问题,拜占庭帝国军队的将军们......
  • 构建简单百万级别的消息推送基础模型
    问题场景:当用户量增大的时候,系统内的消息推送(比如系统内短信推送,微信,钉钉,极光个推推送)将是我们常见业务常见。当系统中的用户量逐渐增大时候,群发用户消息的推送也将成为......
  • Java 基础 - javaagent原理及实践
    JavaAgent是什么?javaagent本质上可以理解为一个jar包插件,这个jar包通过JVMTI(JVMToolInterface)完成加载,最终借助JPLISAgent(JavaProgrammingLanguageInstrumentation......
  • Qt基础
    基本概念Qt是一个跨平台的C++应用程序开发框架;是标准C++的扩展,C++的语法在Qt中都是支持的。良好封装机制使得Qt的模块化程度非常高,可重用性较好,可以快速上手。Qt......
  • MySQL基础-约束
    1. 概念约束是作用域表中字段上的规则,用于限制存储子啊表中的数据2. 目的保证数据库中数据的正确、有效性和完整性3.分类注意: 约束是作用于表中字段......