共计 1527 个字符,预计需要花费 4 分钟才能阅读完成。
ts 的类型
类型 | 例子 | 描述 |
---|---|---|
number |
1 -33,2.5 | 任意数字 |
string |
“hi”“hello” | 任意字符串 |
boolean |
true/false | 布尔值 true 或 false |
object |
{name:“孙悟空”} | 任意 js 对象 |
array |
[1,12,345] | 任意 js 数组 |
tuple |
[1,12] | 元素,TS 新增类型,固定长度数组 |
enum |
enum {A,B} | 枚举、TS 中新增类型 |
自变量 |
其本身 | 限制变量的值就是该字面量的值 |
any |
* | 任意类型 |
unknown |
* | 类型安全的 any |
void |
空值(undefined) | 没有值(或 undefined) |
never |
没有值 | 不是任何值 |
类型复合
使用
|
来链接多个类型,表示只需要满足其中之一的条件就行了
let a: "100" | "222"
let a: string | number
使用 & 表示 与,表示多个条件都要满足。
let j: {name:string} & {age: number}
j = {name: "孙悟空",age: 1}
type
类型的别名
相当给 类型 或复合类型 取个别名
相当于自己定义一个类型 这个类型是类型的集合
type myType = string | number | 3
let sss: myType
类型转换
let a:unknown
a=111
a="45"
a=true
let b:string
b= "hello"
a = b
if(typeof a =="string") {
b=a
}
b = a as string;
b = string>a;
void
类型
void 用来表示空,以函数为例,就表示没有返回值的函数
function fn(): void {
return
}
function fn2(): void {
return undefined
}
function fn3(): void {
return null
}
never
类型
never 表示永远不会返回结果
function fnn(): never {
throw new Error("")
}
function fnn2(): never {
return
}
object
对象的类型声明
{} 用来指定对象中可以包含哪些属性
语法:{属性名: 属性值,属性名:属性值}
在属性名后面加上?,表示属性是可选的
一、基本限制
let bb :{
name: string,
age: number
}
bb = {
name: "John"
}
bb = {
name: "John",
age: 18,
sss: "ss"
}
二、属性名后面加上?,表示属性是可选的
let aa : {
name: string,
age?: number
}
aa = {
name: "John"
}
三、统一设置对象属性类型
let aa : {
name: string,
age?: number,
[propName:string]: any
}
aa = {
name: "John",
sss: ""
}
function
函数的类型声明
设置函数结构的类型声明
语法: (形参:类型,形参:类型) => 返回值
let fuss : (a:string,b:number)=>string
fuss =function(a,b) {
return "ss"
}
array
数组类型声明
数组的类型声明:
类型[]
Array
let f : string[]
let g : Arraystring>
tuple
元组类型声明
元组,元组就是固定长度的数组
语法:[类型,类型,类型,类型…]
let tuple : [string,string,number]
tuple = ["12"]
tuple = ["12","ss",44,ss]
enum
枚举类型声明
指在多个值直接选择时候,适合使用枚举。
enum 性别 {
男 = 1,
女 = 2,
公公= 3
}
let pension : {
name: string,
age: number
}
pension = {
name: "Pension",
age: 性别 . 公公
}
原文地址: typescript 学习笔记 - 基本类型声明
正文完