目录
基础预览
ts可以声明一个变量的类型,此后该变量只能为该类型
let a: number;
a = 10;
如果声明和变量同时进行,ts自动对变量进行类型声明
let a = 10;
对函数的参数进行类型限制
function sum(a: number,b: number) {
return a + b;
}
函数返回值类型限制
function sum(a: number,b: number): number {
return a + b;
}
类型介绍
any类型
let a: any;
let b;
上面两种写法都表示该类型为any,任何a,b可以为任何类型
ts中的字面量
let a: 10;
这样写了之后a的值就只能为10不能为其他值,相当于const
这样写可以采用以下用法
let b: "male" | "female";
b = "male";
b = "female";
联合类型
let c: boolean | string;
unknow类型
unknow相当于一个安全的any,unknow类型的值不能赋给别的类型的值
let a: number;
a = 10;
let w: unknown;
w = 10;
a = w;//显示错误
w是不能赋值给a的
object类型
let c: {
name: string}//对象里面只能有一个name属性
c = {
name: 'sss'}
let r: {
name: string, age?: number}//age可有可无
r = {
name: 'sss'}
let f: {
name: string, [propName: string]: any}//后面接任意类型的属性
//表示d得是一个函数,函数的两个参数得是number,返回值得是number
let d: (a: number, b: number) => number
d = function(n1: number, n2: number) {
return n1 + n2
}
array类型
let e: string[];
e = ['a','s']
let v: Array<number>//数组类型
tuple类型
let tuple: [string, string]//数组的长度是固定的
tuple = ['a', 's']
enum类型
枚举类型主要就是将多种值全部列举出来
//enum
enum Gender {
Male = 0,
Female = 1
}
let i: {
name: string, gender