【Angular】TypeScript 函式與參數

參數與回傳値的型別定義

TypeScript的函式寫法有以下需求

  1. 必須指定參數型別
  2. 必須指定回傳値型別
function hello(name: string, number: number): string{ //這邊指定回傳值型別
 return `hello ${name} and ${number}`;
}

console.log(hello("blank", 100)); //hello blank and 100

如果函式沒有回傳値的話,回傳値的型別為「void」

function hello(name: string): void{
 return `hello ${name}`;
}

console.log(hello("blank")); //hello blank

省略指定參數

參數的冒號「:」前面加問號「?」表示這個參數可以省略

function hello(name?: string): string{
    return `hello ${name}`;
}

console.log(hello()); //hello undefine
//如果沒有設問號的話,使用hello()時,括號裡面一定要放參數。直接使用hello()的話會造成錯誤。

函式內定義參數

可以在定義函式時就指定好參數內容

function hello(name: string = 'Taro'): string{
    return `hello ${name}`;
}

console.log(hello()); //hello Taro

指定複數參數

參數前面多加「…」就可以指定數個同類型的參數

function sum(...values: number[]) { 
    let total = 0;
    for (let i: number = 0; i < values.length; i++) { 
        total += values[i];
    }

    return total;
}

console.log(sum(10, 100, 10000, 100000)); //110110