欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

五、TypeScript参数新特性

程序员文章站 2022-03-27 20:41:34
...

参数新特性

一、TypeScript-参数类型

1、指定参数数据类型

参数类型最重要的特性是在参数名称后面使用冒号来指定参数类型

五、TypeScript参数新特性

这就是声明了一个字符串类型的变量,声明了类型以后,那么后面我们再给这个变量赋值的时候,编辑器会根据他的类型做一些检测;

如给他赋一个数字,他就会提示不能把数字赋给字符串

五、TypeScript参数新特性

这个特性会帮助开发人员在开发过程中,犯这种错误的机会;大家也注意到右边,在JavaScript代码中是不会报错的;
因为JavaScript中没用类型检查的概念,左边编辑器会有个错误的提醒,但是编译以后的JavaScript代码是可以正常执行的;
这个错误只会在TypeScript的编辑器里面展示出来;这点大家要注意一下;

 

2、数据类型推断机制

现在我们再声明一个变量,这时候我们不给他声明类型,我们直接给他赋一个字符串类型的值;

五、TypeScript参数新特性

 

那么下面当我们给他赋一个数字类型的值的时候,编辑器同样会报错;提醒你不能给它赋值,这是因为TypeScript有一个机制叫做类型推断机制;这个机制会在你第一次为某一个变量赋值的时候;自动去推动这个变量的类型;

我们首次给aliax赋的值是个字符串,它就认为下面它就是个字符串了;

五、TypeScript参数新特性

 

3、定义任意类型

那么我们如何使这个变量又能是字符串也能是数字;
那么给他给它声明一个类型叫做any;any类型的意思就是你可以为这个变量赋任何值;字符串也可以数字也可以;
向这种情况我们再给他赋数字的时候就不会报错了;

五、TypeScript参数新特性

 

4、TypeScript的其他数据类型

除了string和any类型以外,TypeScript还有其他类型要逐个介绍一下
如;
number 数字类型,如果你把这个变量声明成数字类型,那么你只能给它赋数字;
如:
var age: number =13;

boolean 布尔类型 
如:
var man: boolean = true;

还有一种是void,void不是用来声明变量的,而是用来声明方法的返回值;
如:
function test(): void { // 表示这个方法不需要任何返回值
  // 假如这时我们给他写一个返回值,就会报错,如
  return "";
}

 

5、声明方法返回值数据类型

五、TypeScript参数新特性

同样的,我们也可以声明string类型的返回值

五、TypeScript参数新特性

那么这里就不会报错了

 

6、声明方法参数数据类型

除了在变量之后声明类型,在方法的后面声明类型以外,我们还可以给方法的参数也声明类型
如:
如果我们给方法的参数声明了string类型,那么下面调用的时候,只能传字符串去调用
如果我们传数字去调,就会报错

五、TypeScript参数新特性

这节我们讲了如何声明类型,以及TypeScript的类型推断机制,五种基本的类型,以及可以声明类型的位置

下面我们在讲一下TypeScript自定义类型
在TypeScript里面我们是可以通过class或接口来声明自定义类型

如我们声明一个Person类型,里面有一个name和age,那么这时候实际上是我自己定义了一个类型,
那么下面我就可以声明一个Person类型的变量;
如:

var zhangsan: Person = new Person(); 
// 当你写zhangsan.后就会有语法提示来帮助你提高开发效率
zhangsan.name = "zhangsan";
zhangsan.age = 18;

以上就是TypeScript参数的类型的介绍!

二、TypeScript-参数默认值

默认参数: 在参数声明后面用等号来指定参数的默认值

给变量设置默认值 给方法参数设置默认值

五、TypeScript参数新特性

 

五、TypeScript参数新特性

主意:给方法的入参设置默认值一定要把带有默认值的参数设置在最后面

三、TypeScript-可选参数

可选参数: 在方法的参数声明后面用问号来标明次参数为可选参数

现在我们只传一个参数来调用一下
第一个参数设置为xxx,第二个参数是可选的,第三个参数有默认值jojo

五、TypeScript参数新特性

注意:如果可选参数没有传那么则不能在函数体里面对它进行处理,否则将会报错

五、TypeScript参数新特性

五、TypeScript参数新特性

注意:可选参数不能放在必选参数的后面

相关标签: TypeScript