typescript学习笔记

基础类型

数组

1
2
3
4
# 1
const list: (string | number)[] = []
# 2
const list: Array<number | string> = []

元组 Tuple

1
let x: [string, number];

枚举
enum类型是对JavaScript标准数据类型的一个补充。 像C#等其它语言一样,使用枚举类型可以为一组数值赋予友好的名字。

1
2
3
4
5
6
# 可以不复制,默认为数字序号。也可以设定序号起始位置,例如  audioInput = 1, audioOutput, videoInput  对应为 1,2,3
export enum EDeviceType {
audioInput = 'audioInput',
audioOutput = 'audioOutput',
videoInput = 'videoInput',
}

类型断言

当你在TypeScript里使用JSX时,只有 as语法断言是被允许的。

使用as进行断言

1
2
let someValue: any = "this is a string";
let strLength: number = (someValue as string).length;

使用<>进行断言

1
2
let someValue: any = "this is a string";
let strLength: number = (<string>someValue).length;

接口 - 可选属性

1
2
3
4
5
6
7
8
9
interface SquareConfig {
height: number;
# 只读属性
readonly width: number;
# 可选属性
color?: string;
# 有额外属性,跳过检查,不会报错
[propName: string]: any;
}

函数类型

1
2
3
4
5
6
7
8
interface SearchFunc {
(source: string, subString: string): boolean;
}
let mySearch: SearchFunc;
mySearch = function(src: string, sub: string): boolean {
let result = src.search(sub);
return result > -1;
}

可索引的类型

1

类类型
未完待续…


typescript学习笔记
http://example.com/20200810-typescript/
作者
csorz
发布于
2020年8月10日
许可协议