添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

TypeScript中的类型

什么是TypeScript

TypeScript JavaScript 的超集,通过添加静态类型定义与检查来对 JavaScript 进行扩展。以下简称 TS

Playground

点击这里进入TypeScript的Playground

常见的类型

原始数据类型

JavaScript 中的原始类型在在 TS 中都有对应的类型:

  • string
  • number
  • boolean
  • undefined
  • symbol
  • bigint
  • object : 上面几个都是原始类型, object 表示所有的非原始哦类型,包括数组、对象、函数等,在实际应用中尽量不适用该类型。
  • 1
    2
    3
    4
    5
    6
    7
    8
    const str: string = 'str'
    const num: number = 0
    const bool: boolean = false
    const un: undefined = undefined
    const n: null = null
    const sym: symbol = Symbol('sym')
    const bint: bigint = BigInt(9999999999999999)
    const obj: object = {}

    其他类型

    数组

    1
    2
    const arr1:string[] = [] // 每一项都是字符串的数组
    const arr2:Array<number> = [] // 每一项都是数字的数组

    元组

    1
    2
    3
    const tup1:[string, number] = ['shy', 18] // 元组 第一项为字符串 第二项为数字 共两项
    const tup2:[string, number?] = ['shy'] // 元组 第一项为字符串 第二项为数字 共两项 第二项是可选的可以没有
    const tup3:[name: string, age?: number] // 可以给每一项命名

    函数

    1
    2
    3
    4
    5
    6
    function func1(x: number, y: number): number {
    return x * y
    }
    // func1 的类型为 (x: number, y: number) => number
    const func2: (x: number, y: number) => number = (x, y) => x + y
    const func3 = (x: number, y: number): number => x + y

    JavaScript 中, void 允许在表达式执行完成时,产生(某些地方)期望获得的 undefined 值。
    void 运算符通常只用于获取 undefined 的原始值,一般使用 void(0) (等同于 void 0 )。在上述情况中,也可以使用全局变量 undefined 来代替。
    详见
    MDN

    TS void 描述一个函数没有显示返回值是的类型。

    any

    any 类型表示任意类型,赋予该类型将不会进行类型推断和类型校验 开发中尽量少使用该类型。

    unknown

    unknown 类型标识一个未知的类型。

    any 与 unknown