当前位置: 首页 > news >正文

济南单位网站建设新媒体如何运营推广

济南单位网站建设,新媒体如何运营推广,大连甘井子区,上海东道设计1. 条件类型表达式 T extends U ? X : Y 基本语法#xff1a; T extends U ? X : Y #xff08;T 和 U 是类型#xff0c;而 X 和 Y 是类型或者类型表达式。#xff09; 用于判断 T的每个成员 是否是 U 的子类型。如果是#xff0c;则返回 X#xff0c;否则返回 Y。最终…1. 条件类型表达式 T extends U ? X : Y 基本语法 T extends U ? X : Y T 和 U 是类型而 X 和 Y 是类型或者类型表达式。 用于判断 T的每个成员 是否是 U 的子类型。如果是则返回 X否则返回 Y。最终返回多个Y 联合的结果(never在联合类型中会被忽略) 1. 基本用法--判断类型 // 判断是不是字符串 type IsStringT T extends string ? true : false; type Result1 IsStringstring; // true //判断是不是数组 type isArrayT T extends Arrayany ? true : false type testArray isArray123 判断是不是对象 type isObjectT T extends object true : false type testObject isObject{a:123} 2. 提取元组的类型 type ArrayElementTypeT extends any[] T extends (infer U)[] ? U : never; // 使用示例 const numbers: number[] [1, 2, 3]; type NumberElementType ArrayElementTypetypeof numbers; // number 3. 排除null或undefined的类型 type noNullT T extends null | undefined ? never : T type Result1 noNullstring | null 4. 递归条件类型示例 type DeepArrayElementTypeT T extends any[] ? T[number] extends infer U ? U extends any[] ? DeepArrayElementTypeU : U : never : T; // 使用通用版本 type Example5 DeepArrayElementTypenumber[][][]; // number type Example6 DeepArrayElementTypestring | number[][]; // string | number 6. 条件烈类型与泛型类型结合使用 条件表达式可以实现递归 // 只针对接口的递归 //实现一个泛型 DeepReadonlyT它将对象的每个参数及其子对象递归地设为只读。 type X {x: {a: 1;b: hi;};y: hey; };type Expected {readonly x: {readonly a: 1;readonly b: hi;};readonly y: hey; };type DeepReadonlyT {readonly [P in keyof T]: T[P] extends object ? DeepReadonlyT[P] : T[P]; };let zs: DeepReadonlyX {x: {a: 1,b: hi,},y: hey, }; zs.x.b xc;infer infer 关键字用于在泛型条件类型中推断类型。它允许你声明一个类型变量该变量会在条件类型被解析时自动推断出具体的类型。 infer 关键字通常与条件类型和映射类型中的 extends 关键字一起使用但是infer 并不一定要与 extends 结合使用。 infer 可以在一个条件类型中多次使用以捕获不同的类型信息。 1. 提取数组元素类型 type ElementTypeT extends any[] T extends (infer U)[] ? U : never; // 使用示例 type NumArrayElementType ElementType[1, 2, 3, 4]; // number type MixedArrayElementType ElementType[1, two, true]; // number | two | true但通常这不是我们想要的 2. 提取数组最后一个元素类型 type arr1 [1, 2, 3] type FirstElementT extends any[] T extends [...infer First, infer Rest] ? Rest : never; type lastTest FirstElementarr1 3. 提取数组第一个元素类型 type arr2 [a, b, c] type FirstElementT extends any[] T extends [infer First, ...infer Rest] ? First : never; type firstTest FirstElementarr1 4. 提取函数参数类型 type FunctionParamsT extends (...args: any) any T extends (...args: infer P) any ? P : never; type Params FunctionParams(a: string, b: number) void; 5. 提取对象属性值类型 type ValueTypeOfPropertyT, K extends keyof T T[K] extends (infer V) ? V : never; type Obj { a: string; b: number; }; type AType ValueTypeOfPropertyObj, a; // AType 类型为 string 6. 提取函数返回类型 type FunctionReturnTypeT extends (...args: any) any T extends (...args: any) infer R ? R : never; type ReturnType FunctionReturnType() string; // ReturnType 类型为 string 7. 提取联合类型中的各个类型 8. 创建类型变换如数组转换成元组2. Exclude ExcludeT, U用于从类型 T 中排除所有可分配给类型 U 的成员。 type T0 Excludea | b | c, a | b; // c type T2 Excludestring | number | (() void), Function; // string | number
http://www.pierceye.com/news/425391/

相关文章:

  • 南京网站制作学校南京有名的网站建设公司
  • wordpress 代码页面宁波专业优化网站制作公司
  • 中国建设行业网站第五届中国国际进口博览会召开时间
  • 做网站设计的有些什么职位wordpress h1 h2 h3
  • 广告公司寮步网站建设哪家好怎么样在百度上推广自己的产品
  • 做亚马逊和淘宝网站公司网站建设深圳
  • 济宁建设网站网站改版 合同
  • wordpress 网站费用北京网站建设 知乎
  • 网站设计师绩效网站页面那个图怎么做
  • 帮别人起名 做ppt的网站做一个网站需要服务器吗
  • 高端网站建设公司兴田德润可以不新产品推广策划方案
  • 建设银行如何网站设置密码嵊州市建设银行网站
  • 陕西 网站建设福州mip网站建设
  • 让人做网站 需要准备什么网站建设国内外现状
  • 滨海做网站公司网页设计模板 中文
  • 辽源市网站建设怎么学做电商
  • 做pc端网站行情网站标签化
  • 中国做的很好的食品网站php图片网站源码
  • 做自媒体小视屏哪个网站好邹平网站建设公司
  • 字体样式 网站layui 网站建设模板
  • 沈阳网站设计江苏城乡建设部网站首页
  • 网站手机端生成wordpress如何下载
  • 网站数据抓取怎么做营销型网站开发定制
  • 福州营销型网站建设中国建设工程信息网站
  • 怎么在服务器里面做网站公司网站模板怎么做
  • 网站建设制作设计营销公司杭州石家庄网络公司哪家好
  • 重庆网站制作特点优势互联免费主机
  • 义乌网站制作多少钱wordpress有访客记录
  • 网站改版建议策划书百度搜索名字排名优化
  • 做药的常用网站wordpress加载js代码