资讯专栏INFORMATION COLUMN

10、TypeScript 之function可选参数和默认参数

Hancock_Xu / 2339人阅读

摘要:默认参数就是可以给参数一个默认值同时也可以给指定一个类型因为指定了默认参数函数中在没有传递任何参数的时候就按照给出的默认值去执行那什么是可选参数上面函数设定了个参数但是我在执行的时候只传递了个占位参数那么这样就会报错了意思是没有传递一个的参

默认参数( = )就是可以给 参数一个默认值 同时也可以给指定一个类型

const add = (a: number = 10, b: number = 20): number => {
     return a + b
};
let result = add();
console.log(result);      // 30

因为指定了默认参数 add() 函数中在没有传递任何参数的时候 就按照给出的默认值去执行

那什么是可选参数?

const add = (a: number = 10, b: number = 20, c: number): number => {
     return a + b + c
};
let result = add(undefined, undefined);

上面 add() 函数设定了3个参数 但是我在执行的时候只传递了 2 个占位参数

那么这样就会报错了:

意思是: 没有传递一个‘c’的参数;

在 js 中都可以不传递所有参数的 那么如何解决这个问题呢?

两个方法:

1、直接 用 undefined 做占位符传递一个 c 参数进去就好了

const add = (a: number = 10, b: number = 20, c: number): number => {
     return a + b + c
};
let result = add(undefined, undefined, 30);    // 60

2、可选参数上场了:

可选参数( ? )就是 这个参数可以是不传的

const add = (a: number = 10, b: number = 20, c?: number): number => {
     return a + b + c
};
let result = add();
console.log(result);      // 30

这样的函数方法 一个参数都不用传递 还可以正常运行 是不是很 cool

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/109924.html

相关文章

  • Typescript 基础(二)函数

    摘要:调用者容易迷惑,当传入函数的参数类型为时返回值的类型究竟是还是。前面两个是函数声明,最后一个是函数实现,有参数类型和返回值类型随意搭配的意思。 Typescript 中的函数 Javascrip 中函数是一等公民一、Javascript 中的两种常见的定义函数的方式1、函数声明 function myFunc(x,y){ return x+y } 2、函数表达式 let add...

    yeyan1996 评论0 收藏0
  • TypeScript入门-声明与结构、函数

    摘要:声明和结构在中,支持和这样的声明方式。解构就是将声明的一组变量与相同结构的数组或者对象的元素数值一一对应,并将变量相对应元素进行赋值。 学习Angular 2 , 《揭秘Angular 2》读书笔记。Angular2 选择 TypeScript 作为其官方最主要的构建语音,这意味着掌握 TypeScript 语音将更有利于高效地开发 Angular 应用。 声明和结构 在TypeScr...

    CoyPan 评论0 收藏0
  • TypeScript快速入门

    摘要:添加了可选的静态类型注意并不是强类型和基于类的面向对象编程。类类型接口示例接口更注重功能的设计,抽象类更注重结构内容的体现模块中引入了模块的概念,在中也支持模块的使用。 一:Typescript简介 维基百科: TypeScript是一种由微软开发的自由和开源的编程语言。它是JavaScript的一个严格超集,并添加了可选的静态类型和基于类的面向对象编程。C#的首席架构师以及Delp...

    moven_j 评论0 收藏0
  • 从 JavaScript 到 TypeScript

    摘要:能够根据返回语句自动推断出返回值类型,因此我们通常省略它。定义的函数类型接口就像是一个只有参数列表和返回值类型的函数定义。可索引类型具有一个索引签名,它描述了对象索引的类型,还有相应的索引返回值类型。 showImg(https://segmentfault.com/img/remote/1460000010018621?w=640&h=280); 本文首发在我的个人博客:http:/...

    roundstones 评论0 收藏0
  • TypeScript入门教程

    摘要:现在,出现了更多本身支持或者通过插件支持语法智能提示纠错甚至是内置编译器的文本编辑器和。 TypeScript是什么 TypeScript是JavaScript的一个超集 TypeScript需要编译为JavaScript才能运行(语法糖) TypeScript提供了类型系统,规范类似Java TypeScript提供了ES6的支持,也可以支持部分ES7草案的特性,不用担心TypeS...

    Dr_Noooo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<