当前位置:首页 > 技术分析 > 正文内容

【TS 二】ts内置类型一览

基本类型

  1. string:表示字符串类型。
  2. number:表示数字类型,包括整数和浮点数。
  3. boolean:表示布尔类型,只有 true 或 false 两个值。
  4. null:表示空值。
  5. undefined:表示未定义的值。

对象类型

  1. object:表示非原始类型,即除了 number、string、boolean、symbol、null 或 undefined 之外的类型。
  2. Array<T>:表示数组类型,T 是数组中元素的类型。
  3. Tuple:表示元组类型,是一个固定长度的数组,每个元素的类型可以不同。
  4. Enum:表示枚举类型,用于定义一组命名常量。
  5. Any:表示任意类型,可以是任何类型的值。
  6. Unknown:表示未知类型,类似于 any,但更安全,因为它不能被直接使用。
  7. Never:表示永远不会发生的值的类型,通常用于表示函数不会返回或总是抛出异常。
  8. Void:表示没有任何类型,通常用于表示函数没有返回值。

类型操作符

  1. Type[] 或 Array<Type>:表示数组类型。
  2. [Type1, Type2, ...]:表示元组类型。
  3. { [key: string]: Type }:表示对象类型,其中键是字符串,值是 Type 类型。
  4. keyof Type:表示 Type 类型的所有公共属性的联合类型。
  5. Type[keyof Type]:表示 Type 类型的所有公共属性的值的联合类型。
type User = {
    name: string;
    age: number;
    isAdmin: boolean;
  };

// UserValues 的类型是 string | number | boolean
type UserValues = User[keyof User]; 
  1. Partial<Type>:表示 Type 类型的所有属性都变为可选的。
  2. Required<Type>:表示 Type 类型的所有属性都变为必需的。
  3. Readonly<Type>:表示 Type 类型的所有属性都变为只读的。
  4. Record<Keys, Type>:表示一个对象类型,其键是 Keys 类型,值是 Type 类型。
  5. Pick<Type, Keys>:表示从 Type 类型中选择一组属性 Keys 组成的类型。
  6. Omit<Type, Keys>:表示从 Type 类型中排除一组属性 Keys 组成的类型。
  7. Exclude<Type, ExcludedUnion>:表示从 Type 类型中排除 ExcludedUnion 类型的联合类型。
  8. Extract<Type, Union>:表示从 Type 类型中提取 Union 类型的联合类型。
  9. NonNullable<Type>:表示从 Type 类型中排除 null 和 undefined 的类型。
  10. Parameters<Type>:表示函数类型 Type 的参数类型组成的元组类型。
  11. ReturnType<Type>:表示函数类型 Type 的返回值类型。
  12. InstanceType<Type>:表示构造函数类型 Type 的实例类型。
  13. ThisType<Type>:表示在对象字面量中使用 this 时的类型。

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/3576.html

标签: adminlte2
分享给朋友:

“【TS 二】ts内置类型一览” 的相关文章

继Yuzu后,任天堂要求移除多个Switch模拟器项目

IT之家 7 月 11 日消息,任天堂美国分公司 (Nintendo of America) 已要求移除多个用于模拟 Nintendo Switch 游戏的开源模拟器项目,其中包括 Suyu、Nzu、Uzuy、Torzu、Sudachi 和 Yuzu-vanced 等。这些模拟器均被指控包含绕过任天...

js中数组filter方法的使用和实现

定义filter() 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。语法var newArray = arr.filter(callback(element[, index[, selfArr]])[, thisArg])参数callback循环数组每个元素时调用的回调函数。回调函...

Vue学习笔记之动态路由的参数传递应用及技巧

路由的参数传递:①通过params的类型· 配置路由格式:/router/:id· 传递的方式:在path后面跟上对应的值· 传递后形成的路径:/router/list,/router/profile这个就是前两篇中提到的"动态路由"中有应用过这个方法:②通过query的类型(对象方...

Vue实战篇|使用路由管理用户权限(动态路由)

权限控制是后台管理系统比较常见的需求,如果我们需要对某些页面的添加权限控制的话,那我们可以在路由管理中的权限做一些校验,没有通过权限校验的给出相应的提示或者直接跳转到报错页面。跟着我一起来学vue实战篇路由管理权限吧!权限校验函数getCurrentAuthority()函数用于获取当前用户权限,一...

Vue进阶(二十六):详解router.push()

在Vue2.0路由跳转中,除了使用 <router-link> 声明式创建 a 标签来定义导航链接,还可以借助 router 的实例方法,通过编码式编写代码来实现。router.push(location)想要导航到不同的 URL,则使用 router.push 方法。这个方法会向 hi...

thinkphp8+vue3微信小程序商城,发布公众号App+SAAS+多商户

项目介绍三勾小程序商城基于thinkphp8+vue3+element-ui+uniapp打造的面向开发的小程序商城,方便二次开发或直接使用,可发布到多端,包括微信小程序、微信公众号、QQ小程序、支付宝小程序、字节跳动小程序、百度小程序、android端、ios端。支持主题色+自定义头部导航+自定义...