typescript学习笔记-基本类型声明

9,668次阅读
没有评论

共计 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 学习笔记 - 基本类型声明

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于2024-10-29发表,共计1527字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)