Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >TypeScript函数类型

TypeScript函数类型

原创
作者头像
HueiFeng
修改于 2020-04-09 02:10:07
修改于 2020-04-09 02:10:07
7900
举报
文章被收录于专栏:HueiFeng技术专栏HueiFeng技术专栏

# 声明式类型函数

通过如下代码我们实现了一个返回值为number类型的方法,同时我们也对返回值和参数进行了约束

```

function funcType(name:string,age:number):number{

return age;

}

var ageNum:number=funcType("张三",18)

```

如果说在我们参数不确定的情况下我们可以通过如下代码进行创建

```

function funcType1(name:string,age:number,sex?:string):numbe

{

return age;

}

var ageNum1:number=funcType1("张三",18,"男")

var ageNum2:number=funcType1("张三",18)

```

对方法进行添加默认值

```

function funcType2(name:string="张三",age:number=18):number{

return age;

}

```

# 表达式类型函数

```

var funcType3=function(name:string,age:number):numbe

{

return age;

}

```

如上代码片段是我们之前创建的函数

那么我们还可以对变量进行约束

```

var funcType4:(name:string,age:number)=>number=function(name:string,age:number):numbe

{

return age;

}

```

下面我们也可以使用接口的形式进行约束

```

interface funcType5{

(name:string,age:number):numbe

}

var funcType6:funcType5=function(name:string,age:number):number{

return age;

}

```

# 联合类型重载

通过如下代码我们可以实现一个联合类型函数,当然这可以采用重载的方式

当我们的参数是number类型时我们的返回值是number类型,当我们的参数是string类型时我们的返回值是string类型,这一块具体在我们实际业务中可以根据实际需求进行相应修改

```

function getVal(val:number):number;

function getVal(val:string):string;

function getVal(val:string|number):number|string{

return val;

}

let a=getVal(1)

let a1=getVal("1")

```

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
TypeScript函数重载
对于同一个函数我们在不同场景下传参,参数有时候全部需要,有时候部分需要,定义多个同名函数就会报错,那么该怎么实现这个操作呢?我们可以为函数设置默认参数和可选参数。
不叫猫先生
2023/11/18
2520
TypeScript函数重载
TypeScript笔记
参加字节跳动的青训营时写的笔记。这部分是林皇老师讲的课。(过年偷懒,项目爆肝后,重新整理笔记)
赤蓝紫
2023/01/02
3790
TypeScript笔记
【Vue3+TypeScript】CRM系统项目搭建之 — 关于拥抱 TypeScript 这件事【上】
string 、 number 、 boolean 、 null 、 undefined 、 bigint 、 symbol 、 object
HelloWorldZ
2024/03/20
1520
【Vue3+TypeScript】CRM系统项目搭建之 — 关于拥抱 TypeScript 这件事【上】
3、你能读得懂的TypeScript教程之函数
如果你指定了返回类型为void,却偏偏要返回值,那是在找死,一样不会编译通过,如:
用户1272076
2019/03/27
7840
typescript基础笔记
typescript早在2013年就发布了第一个正式版本,印象中一直到了19年才大火起来。三年过去了,一直是可用可不用的状态,于是很多人都没学习使用。直到react和vue开始捆版上了ts,前端圈也开始了“内卷”,ts已经是不得不用的状态了。
wade
2022/03/28
7580
深入浅出TypeScript | 青训营笔记
TS(TypeScript)是一种由Microsoft开发和维护的编程语言,它是JavaScript的超集,支持静态类型检查、类、接口、泛型等特性。TS最终会被编译为标准的JavaScript代码,因此可以运行在任何支持JavaScript的环境中。
心安事随
2024/07/29
1220
深入浅出TypeScript | 青训营笔记
TS 笔记
子类继承父类,子类可以访问父类公开的属性和方法,但是不能直接获取到父类的私有属性或者受保护的属性
4O4
2022/04/25
4500
【TypeScript 4.5】005-第 5 章 函数
object 指的是任何不是基元的值:string、number、bigint、boolean、symbol、null、undefined
訾博ZiBo
2025/01/06
1540
【愚公系列】2021年12月 Typescript-泛型
泛型:软件工程中,我们不仅要创建一致的定义良好的API,同时也要考虑可重用性。 组件不仅能够支持当前的数据类型,同时也能支持未来的数据类型,这在创建大型系统时为你提供了十分灵活的功能。
愚公搬代码
2022/12/01
5680
一起重学TypeScript
class 类名<T> { name!: T; hobby!: T; } # 这样这个类的所有类型为 number let 实例 = new 类名<number>();
程序员海军
2021/10/10
2.1K0
一起重学TypeScript
TypeScript学习笔记(二)—— TypeScript基础
JavaScript 的类型分为两种:原始数据类型(Primitive data types)和对象类型(Object types)。
张果
2022/10/04
5.1K0
TypeScript学习笔记(二)—— TypeScript基础
TypeScript学习第三篇 - 函数的定义
6. 在TypeScript中形参和实参必须一样,如果不一样就要配置可选参数,对可传可不传的参数添加 ?号。
越陌度阡
2020/11/26
4070
typescript笔记2 函数 类 接口
es5中方法实参和形参可以不一样,但是ts中必须一样,如需不一样可配置为可选参数 注:可选参数必须配置在最后面
路过君
2022/04/13
1.1K1
TypeScript 基础教程
通过引入强类型系统,补充JS的短板。原生JS类型的灵活性导致在实际环境中可能会出现各种不确定的bug。通过使用TS,我们可以在开发阶段既预测这些可能由类型转换导致的错误,从而提前规避bug,开发出更健全的程序。
路过的那只狗
2020/11/14
1.1K0
TypeScript入门笔记(三):函数
TypeScript学习手册: https://www.tslang.cn/docs/handbook/basic-types.html
王小婷
2020/02/11
4700
TypeScript入门笔记(三):函数
TypeScript联合类型 接口
这一块我们必须使用string或者number都支持的类型,那么下面我们可以进行调用扩展方法toString()
HueiFeng
2020/04/01
5670
TypeScript入门秘籍:快速掌握静态类型编程
TypeScript是一种静态类型的JavaScript超集,它添加了可选的类型注解,使得代码更加健壮、易于维护。无论你是初学者还是有一定编程经验的开发者,这篇博客将带你快速入门TypeScript。
Front_Yue
2024/09/08
1500
TypeScript入门秘籍:快速掌握静态类型编程
TypeScript魔法堂:函数类型声明其实很复杂
江湖有传“动态类型一时爽,代码重构火葬场”,由于动态类型语言在开发时不受数据类型的约束,因此非常适合在项目原型阶段和初期进行快速迭代开发使用,这意味着项目未来将通过重写而非重构的方式进入成熟阶段。而在企业级应用开发中,每个系统特性其实都是需求分析人员与用户进行多次调研后明确下来的,后期需要重写的可能性微乎其微,更多的是修修改改,在单元测试不足常态化的环境下静态类型的优势就尤为突出。而TypeScript的类型系统和编译时类型检查机制则非常适合用于构建企业级或不以重写实现迭代升级的应用系通。 本系列将重点分享TypeScript类型声明相关实践
^_^肥仔John
2020/11/04
1.3K0
typescript 接口_typeScript
TypeScript 的核心原则之一是对值所具有的结构进行类型检查。我们使用接口(Interfaces)来定义对象的类型。接口是对象的状态(属性)和行为(方法)的抽象(描述)
全栈程序员站长
2022/09/16
1.1K0
typescript 接口_typeScript
TypeScript基础(一)基本类型与类型运算
TypeScript是一种开源的编程语言,它是JavaScript的超集,意味着所有的JavaScript代码都可以在TypeScript中运行。TypeScript添加了静态类型检查和其他一些新特性,以提高代码的可读性、可维护性和可扩展性。
can4hou6joeng4
2023/11/17
2520
相关推荐
TypeScript函数重载
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档