TypeScript类型

作者: 我的袜子都是洞 | 来源:发表于2022-12-08 20:26 被阅读0次

TypeScript类型

基础类型

  • string
  • number
  • boolean

数组

两种定义数组方法:

type[]
Array<type> // 泛型写法

对象类型

带有任何属性的JavaScript的值都可以看作为对象。

function printCoord(pt: { x: number; y:number }) {
    console.log("坐标X的值为:" + pt.x);
    console.log("坐标Y的值为:" + pt.y);
}

联合类型

两个或两个其他类型组成的类型

let id: number | string

类型别名

方便重复使用联合类型。单独定义一个类型,重复使用。

type Point = {
    x: number;
    y: number;
}

type ID = number | string

type UserInputSanitizedString = string

接口

interface Point {
    x: number;
    y: number;
}
function printCoord(pt: Point) {
    console.log("坐标X的值为:" + pt.x);
    console.log("坐标Y的值为:" + pt.y);
}

类型别名和接口

几乎所有可以使用interface接口定义的都可以使用type类型别名来定义。

区别一:扩展方式

扩展接口,使用extends关键字:

interface Animal {
    name: string
}

interface Bear extends Animal {
    honey: boolean
}

const bear: Bear = {
    name: 'winie',
    honey: true
}

扩展类型别名,使用&符号:

type Animal = {
    name: string
}
type Bear = Animal & {
    honey: boolean
} 

区别二:添加字段方式

接口添加字段,同时定义两个同名的即可:

interface MyWindow {
    count: number
}
interface MyWindow {
    title: string
}

type方式,类型创建之后就不能更改了。

相关文章

网友评论

    本文标题:TypeScript类型

    本文链接:https://www.haomeiwen.com/subject/cbmgfdtx.html