TypeScript 类型映射的妙用:
来源:互联网 发布:mac srt 字幕乱码 编辑:程序博客网 时间:2024/06/06 14:02
看注释:
//==========================// 知识点:映射类型class People { name: string; age: number; height: number; address: string;}// 用途:// 1、可空类型的定义: // 按照下方这样创建一个People的实例的话,类的每个属性都可以返回空.type Nullable<T> = {[P in keyof T]: T[P] | null }const pNum: Nullable<People> = new People();//如果设定name的属性,那么pNum这个对象的所有属性都为空,但是定义类的时候,并不需要设定为 props?:number这样,而且不会报错.// 并且,给每个属性赋值为null也不会报错,真是奇了怪了...pNum.name = "terry";pNum.age = null;console.log(pNum.name); //"terry"console.log(pNum.height); //undifined.// 2、type Partial<T> = {[P in keyof T]?: T[P]}const pp: Partial<People> = new People();pp.age = 27;// pp.height = null; //这样赋值,就会报错。pp.address = "home";console.log(pp.address);// 看看这两个不同类型的定义,就是最后面多了一个null的设定,这就是nullable和partial的区别:// 一个是所有的属性都可以爱怎么复制怎么赋值,包括null,一个是所有的属性,要么不赋值,要么按照规定赋值.// type Nullable<T> = {[P in keyof T]: T[P] | null }// type Partial<T> = {[P in keyof T]?: T[P]}
阅读全文
0 0
- TypeScript 类型映射的妙用:
- TypeScript的映射类型
- typescript[1] 基本类型
- TypeScript-基础类型学习
- typescript基础类型
- TypeScript函数类型
- TypeScript 类型推论整理
- TypeScript 类型兼容性整理
- TypeScript 高级类型整理
- typescript 之 基础类型
- TypeScript-基础类型
- Typescript(基础类型)
- typeScript中的类型
- Hibernate的映射类型
- Hibernate的映射类型
- 枚举类型的映射
- Hibernate的映射类型
- map的类型映射
- Hibernate中的对象状态
- Hibernate中session.get()与session.load()的区别
- RBAC从零开始--依赖获取和创建项目结构
- React Native 入门(九)
- JS 复制粘贴的使用
- TypeScript 类型映射的妙用:
- Qt 之 HTTP 请求下载(支持断点续传)
- mysql免安装版本配置
- Android monkeyrunner录制 && python脚本&& adb shell input 实现自动化测试
- 过河问题
- JavaScript之事件处理(监听)函数
- 无压应对信息过载
- ActivityManager 和 内部类 RecentTaskInfo的学习
- redis在spring中的配置及java代码实现