0


Typescript基本类型---上篇

目录

ts专栏 ===> 🌈 typescript入门到拔高🌈(持续更新中…)

类型声明

  • 类型声明是TS非常重要的一个特点
  • 通过类型声明可以指定TS中变量(参数、形参)的类型
  • 指定类型后,当为变量赋值时,TS编译器会自动检查值是否符合类型声明,符合则赋值,否则报错
  • 简而言之,类型声明给变量设置了类型,使得变量只能存储某种类型的值
  • 语法:
let变量: 类型;let变量: 类型 = 值;functionfn(参数: 类型,参数: 类型): 类型{...}

自动类型判断

  • TS拥有自动的类型判断机制
  • 当对变量的声明和赋值是同时进行的,TS编译器会自动判断变量的类型
  • 所以如果你的变量的声明和赋值时同时进行的,可以省略掉类型声明

类型

类型例子描述number1, -33, 2.5任意数字string‘hi’, “hi”任意字符串booleantrue、false布尔值true或false字面量其本身限制变量的值就是该字面量的值any任意类型unknown类型安全的anyvoid空值(undefined)没有值(或undefined)never没有值不能是任何值

number

声明一个变量a,同时指定它的类型是number

leta: number;

a的类型设置为了number,在以后使用a的过程中a的值只能是数值

a =33;// a = 'hello'   此行代码会报错,因为变量a的类型是number,不能赋值字符串

string

let color:string="blue";
color ='red';let fullName:string=`Bob Bobbington`;let age:number=37;let sentence:string=`Hello, my name is ${fullName}.I'll be ${age +1} years old next month.`;

boolean

let isDone:boolean=false;

字面量

可以直接使用字面量进行类型声明

let c :10
c=10console.log(typeof c)//number

也可以使用字面量去指定变量的类型,

通过字面量可以确定变量的取值范围

,可以使用

|

连接多个类型(联合类型),这里的

|

是“

”的意思

let color:'red'|'blue'|'black';let num:1|2|3|4|5;

any

  1. any表示任何类型,一个变量设置类型为any后相当于关闭了ts的类型检测
  2. 不建议使用
let a :any;let d:any=4;
d ='hello';
d =true;

声明变量如果不指定类型,则ts解析器会自动判断变量的类型为any(隐式any)

let e;
e ='hello'
e =123

unknown

unknown 表示未知类型的值

let f :unknown
f  =10
f ="hello"

unknown 实际上就是一个

类型安全的any

unknown类型的变量,不能直接赋值给其他变量,如图所示:

在这里插入图片描述

在这里我们定义一个string类型的变量,没有赋值,随后定义了f,我们直接将

f赋值给s

,直接会报错,这就是因为

unknown类型的变量,不能直接赋值给其他变量

我们需要给f指定类型,这样的话才不会报错,实例代码如下:

if(typeof f ==='string'){
    s = f
}

但是在我们的实际书写代码的时候,编译器一旦遇到

unknown

类型的变量时便无法解析,我们一直if判断未免不会感到麻烦,这就引入了一个名词

类型断言

类型断言

定义 :

用来告诉解析器变量的实际类型

语法:

变量 as 类型

<类型>变量
s = f asstring
s =<string>f

void

在我们书写函数的时候都知道函数都可以去返回值的,在书写函数的时候:void用来表示空,以函数为例,就

表示没有返回值的函数
functionfn():void{}//es6箭头函数const fn1 =():void=>{}

never

never表示永远不会返回结果(undefined都不会返回),在我们学习js的时候都学过

抛出异常

这个函数,这个函数什么都不返回,就是提示报错。

functionfn2():never{thrownewError('报错了')}

在书写代码时,当我们需要报错的时候只要一调用这个函数,就会报错,这就体现了ts的严谨性!

小结

通过ts基本类型的上篇学习,就可以感受到ts书写代码的严谨性,ts在运用到大型项目中非常的实用,在维护的过程中非常的便利,通过学习基本类型就可以感觉到ts比js更加的细节!


本文转载自: https://blog.csdn.net/m0_52040370/article/details/126190258
版权归原作者 前端小白在前进 所有, 如有侵权,请联系我们删除。

“Typescript基本类型---上篇”的评论:

还没有评论