avatar
童琦杰
Feb 26, 2017

Typescript - 函数

函数类型

参数类型及返回类型构成了函数类型。

typescript
let myAdd: (x: number, y: number) => number =
    function(x: number, y: number): number { return x+y; };

可选参数

在参数名称后面添加问号?定义可选参数。

typescript
function buildName(firstName: string, lastName?: string) {
    if (lastName)
        return firstName + " " + lastName;
    else
        return firstName;
}

let result1 = buildName("Bob"); // works correctly now

可选参数位置必须在非可选参数后面。

默认参数

默认参数是指在参数定义时给参数指定值,当用户调用函数时未传该参数值或传undefined值时,函数使用默认值作为该参数的值。

typescript
function buildName(firstName: string, lastName = "Smith") {
    return firstName + " " + lastName;
}

let result1 = buildName("Bob"); // works correctly now
let result2 = buildName("Bob", undefined); // still works

默认参数可定义在参数列表中任意位置。当默认参数位置在非可选(默认)参数前,调用时必须传递对应的值或undefined值。

变长参数

通过在参数名称前添加省略号...来定义变长参数,变长参数类型必须是数组类型。

typescript
function buildName(firstName: string, ...restOfName: string[]) {
    return firstName + " " + restOfName.join(" ");
}

变长参数位置必须在参数列表最后。

© 2015-2022 tongqijie.com 版权所有沪ICP备17000682号