TypeScript-函数

时间:2020-02-23 14:46:20  来源:igfitidea点击:

在本教程中,我们将学习在TypeScript中使用函数。

在JavaScript中,如果我们要创建一个可以打印" Hello World"的函数,请编写以下代码。

function greetings() {
  console.log("Hello World");
}

//calling
greetings();

上面的代码在TypeScript中也是有效的,并且也会给我们相同的结果。

现在,我们将添加类型并增强函数。

没有返回类型的函数

如果一个函数不返回任何值,那么我们可以将返回类型设置为" void"。

function greetings(): void {
  console.log("Hello World");
}

//calling
greetings();

函数返回一些值

以下是函数返回值的语法。

function funName(): type {
  //some code...
}

其中," funName"是函数的名称,它返回给定" type"的值。

在下面的示例中,函数getNumber返回类型为number的值。

function getNumber(): number {
  return Math.random();
}

//calling
console.log("Random number: " + getNumber());

带参数函数

以下是带有参数的函数的语法。

function funName(val1: type): retType {
  //some code...
}

其中,funName是函数的名称。
val1是给定type的参数。
该函数的返回类型为retType

在下面的示例中,我们有一个" addition"函数,该函数将两个数字作为参数并返回一个数字。

function addition(x: number, y: number): number {
  return x + y;
}

//calling
console.log("Sum: 1 + 2 = " + addition(1, 2));

注意!如果我们将非数字类型的值传递给上面的函数addition(),则会收到错误消息。

函数类型

我们可以使用函数签名(参数列表和返回类型)来创建新类型。

在下面的示例中,我们使用Arrow Function创建函数类型的变量myFun

let myFun: (v1: number, v2: number) => number;

因此,以上一行告诉我们,只能为myFun分配一个具有两个类型为number类型的参数的函数,而该函数的返回类型为number。

因此,让我们创建一个函数,然后将其分配给myFun变量。

//function
function multiply(x: number, y: number): number {
  return x * y;
}

//variable of function type
let myFun: (v1: number, v2: number) => number;

//assign function
myFun = multiply;

//now call the function
console.log("Multiply 1 x 2 = " + myFun(1, 2));