typescrip 定义函数


// 参数默认值和可选值
function fn1(name: string, age?: number): string {// 那么name必传,age选传,返回为字符串return `${name}${age}`;
};
fn1("全易");
fn1("全易", 18);
// fn1("全易", 18, "在北京")  // 报错// 剩余参数处理
function fn2(name: string, ...args: (string | number)[]) {// 那么name必传。剩余参数放入args集合并规定其他参数为字符串或数字。不指定返回数据console.log(args);// do something
};
fn2("全易", 18, "在北京");// this指定(只能是void)
function fn3(this: void, name: string) {console.log(this);// do something
}
fn3("全易") // 虽然形参第一位是this参数,但在实参传入时不占位。// 函数重载(就是不指定返回什么类型)
function fn4(name: string, age: number);
function fn4(name: string, age: string);
// 通过以规定参数类型进行重载,age既可以是数字也可以是字符串
function fn4(name: string, age: string | number): number | string {return 123// return "123"// 这种应用场景并不高,一般都用泛型实现
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/51788.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GCA检查设计约束流程

文章目录 一、什么是GCA二、GCA流程1 .启动GCA2 .设置lib3 .读design并链接design4 .读SDC5 .analyze_design6 .报告或图形化界面分析结果 一、什么是GCA Galaxy Constraint Analyzer,简称GCA,是一个专门检查设计约束的工具,现在已经集成在P…

MySQL使用教程 最最最实用的零基础教程 直接从安装开始教!!!!

数据构成了我们日益数字化的社会基础。想象一下,从移动应用和银行系统到搜索引擎,再到如 ChatGPT 这样的先进人工智能聊天机器人,这些工具若没有数据支撑,将寸步难行。你有没有好奇过这些海量数据都存放在哪里呢?答案正…

Vue3学习总结

学习Vue3,最好的地方是官网:https://cn.vuejs.org/guide/quick-start.html 我这里只是自己的总结,以加深自己的学习记忆。如果其他人想学习Vue3,建议直接去官网学习。 1、已创建好的Vue3工程再次启动的命令:npm run de…

使用java自带的队列进行存取数据ArrayBlockingQueue 多线程读取ExecutorService

场景: 防止接收数据时处理不过来导致阻塞,使用ArrayBlockingQueue队列存储数据后,以多线程的方式处理数据 保证系统性能。 package com.yl.demo.main4;import java.text.SimpleDateFormat; import java.util.Date; import java.util.concurr…

ArchLinux部署waydroid

在Arch Linux系统上部署Waydroid运行Android APP 文章目录 在Arch Linux系统上部署Waydroid运行Android APP1. 安装要求2. 本机环境3. 安装 Waydroid4. 网络配置5.注册Google设备6. 运行效果图 Waydroid是Anbox配合Haliun技术开发的LXC Android容器,可在GUN/Linux系…

华三云课堂CAS5.0忘记admin密码?

当忘记修改后的管理平台 admin 账户密码,无法登录管理平台。 处理步骤: (1) SSH 连接服务器。 (2) 执行/var/lib/h3class/bin/reset-admin-pwd.sh 命令。 (3) 重置后的密码为 Cloud1234

src漏洞挖掘--验证码篇

图片验证码 验证码前端检测 验证码由客户端JS生成并且仅仅在客户端用JS验证,通过抓包看数据传输是否有验证码字段或者是关闭JS看能否通过验证。 测试方法:当我们开始抓包,输入任意验证码,页面提示验证码错误,且没有抓…

《AM-Bi-LSTM: Adaptive Multi-Modal Bi-LSTM for Sequential Recommendation》

系列论文研读目录 文章目录 系列论文研读目录1.2.3.4.5.6.7.8.9.10. 文章链接 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.

【Python中GDAL和OGR的优缺点】

GDAL(Geospatial Data Abstraction Library)和OGR(OpenGIS Simple Features Reference Implementation)在地理信息系统(GIS)和遥感领域都扮演着重要角色,它们各自具有一些优点和缺点。以下是对G…

如何远程调用运维人员电脑桌面

要远程调用运维人员的电脑桌面,可以通过以下几种方法和工具: 一、使用第三方远程控制软件: 要远程访问操作和维护人员的桌面,您可以使用专业的远程桌面软件按照以下步骤操作。以下是使用 Splashtop 的一般指南,但对于…

ME11-创建采购信息记录

ME11 创建采购信息记录 创建Info Record时,工厂不是必输项。因为采购组织可以对应多个工厂,所以可以针对一个工厂设定Info Record,也可以不固定。 计划交货时间维护供应商收到采购订单后,把货送到工厂的时间。 标准数量一般维护为…

MacOS查看端口占用

在macOS系统中,可以使用lsof和netstat命令来查看端口占用情况。 使用lsof命令 lsof -i :端口号替换端口号为你想要检查的端口。例如,要查看端口8080的占用情况,可以使用: lsof -i :8080使用netstat命令 首先,你需要…

工作中经常听到的云、边、端到底是什么意思?

工作中经常听到的云、边、端到底是什么意思? 在数字化和智能化飞速发展的今天,“云”、“边”、“端”这三个词频频出现在我们的生活和工作中。它们代表着不同的数据处理和计算模式,极大地改变了我们的生活方式。那么,它们分别是…

《Linux运维总结:基于x86_64架构CPU使用docker-compose一键离线部署zookeeper 3.8.4容器版分布式集群》

总结:整理不易,如果对你有帮助,可否点赞关注一下? 更多详细内容请参考:《Linux运维篇:Linux系统运维指南》 一、部署背景 由于业务系统的特殊性,我们需要面对不同的客户部署业务系统&#xff0…

邮件攻击案例系列四:某金融企业遭遇撒网式钓鱼邮件攻击

案例描述 2023 年 3 月末,某知名投资公司业务经理李先生先后收到两封看似是来自邮件服务商和公司网络安全部门发出的邮件,标题是“紧急:邮箱安全备案更新通知”。邮件内容称,由于最近公司内部系统升级,所有员工必须重…

【Python机器学习】朴素贝叶斯——使用朴素贝叶斯过滤垃圾邮件

使用朴素贝叶斯解决一些现实生活中的问题时,需要先从文本内容中得到字符串列表,然后生成词向量。 使用朴素贝叶斯对电子邮件进行分类的过程: 1、收集数据:提供文本文件 2、准备数据:将文本文件解析成词条向量 3、分析…

Kubernetes 面试题及答案整理,最新面试题

Kubernetes中Pod是什么,它与容器有什么区别? Pod是Kubernetes中的基本运行单元,可以包含一个或多个紧密相关的容器。它们共享相同的网络命名空间、IP地址和端口空间,可以访问相同的存储资源。Pod作为单个应用的最小单元,确保其中的容器在同一个运行环境中并且相互之间的网…

【Windows】Mountain Duck(FTP服务器管理工具)软件介绍

软件介绍 Mountain Duck是一款基于Cyberduck开发的应用程序,它允许用户通过FTP、SFTP、WebDAV、S3和OpenStack Swift等协议连接到云存储和远程服务器,并在本地文件浏览器中以熟悉的方式访问和管理这些文件。 功能特点 支持多种协议: Mountain Duck支持…

面向对象程序设计(C++)模版初阶

1. 函数模版 1.1 函数模版概念 函数模板代表了一个函数家族,该函数模板与类型无关,在使用时被参数化,根据实参类型产生函数的特定类型版本,可以类比函数参数,函数模版就是将函数参数替换为特定类型版本 1.2 函数模版格…

BUG 太多?苹果罕见“重新推送”ios18 beta 4测试版

在刚刚过去的周末,苹果公司面向开发者,重新发布了 iOS / iPadOS 18 Beta 4 更新,内部版本号从 22A5316j 变为 22A5316k,目前尚不清楚两个 Beta 4 版本更新之间的区别。 此次更新包大小仅为251M左右,是 更新。 对于已经…