今天要来介绍TypeScript(TS)函式(Function)的选择性参数(Optional Parameter),
这时我们就要来复习一下啦,
在Day12基础用法中有提到过选择性属性(Optional Properties)(Day12-TypeScript(TS)的选择性属性(Optional Properties)),
那麽今天要讲的跟之前的观念是一样的喔,
只是把函式内的参数加上了选择性属性就会变成选择性参数了,
概念很容易理解吧,
那我们来看看范例说明,
首先附上之前的一般函式的范例吧,
下为Day21示范的范例*(Day21-TypeScript(TS)的函式(Function) Part1)*,
function add(x: number, y: number): number {
return x + y;
}
接着将参数y定义为选择性参数,
表示在呼叫这个函式时可传入也可不传入此参数,
也相对的,
判断就会放在函式内,
如下,
function add(x: number, y?: number): number {
if (typeof y !== 'undefined') {
return x + y;
} else {
return x;
}
}
以上面的范例来说,
若是参要判断参数y究竟有没有被传进来,
那麽函式内就可以用typeof y !== 'undefined'
判断式,
会回传布林值,
以此判断後,
在决定传出的函示。
若是没经过判断,
直接将数字值x加上undefined的y,
便会得到NaN的结果,
代表无效的数值运算,
因此我们还是需要加上判断式来避免这个情况发生。
在使用上的范例如下,
let i = 10;
let j = 20;
let r1 = add(i, j); // 10+20=30
let r2 = add(i); // 10
console.log(r1, r2); // 30 20
也就是一般呼叫函式的方式,
差别在於多了个选择性参数,
让这函式变得更有弹性。
今天把过去学的东西合并在一起来使用,
用比较基础的举例相信大家也都能理解,
那麽今天也要精神喊话一下,
大家加油喔。
<<: 自动化测试,让你上班拥有一杯咖啡的时间 | Day 24 - 学习 trigger 的用法
The Bridge design pattern decouples an abstraction...
今天要来介绍的是定位(position),可以用来设定元素的摆放位置了 position 定位 st...
useEffect - 副作用处理 useEffect:资料获取、订阅或手动方式修改 React C...
缘由: UIUX提出说想让App使用者的手机可以一直亮着,不会自动锁屏,虽然心里知道是有可能的,但没...
Vuex内的getter,相当於component内的computed,作用都是改变资料的表示形式 ...