精品熟女碰碰人人a久久,多姿,欧美欧美a v日韩中文字幕,日本福利片秋霞国产午夜,欧美成人禁片在线观看

TypeScript 函數

TypeScript 函數

函數是一組執行同一任務的語句。我們可以把代碼劃分到不同的函數中,每一個函數執行一個特定的任務來進行的。

函數聲明告訴編譯器函數的名稱、返回類型和參數。函數定義提供了函數的實際主體。

 

1. 函數定義

函數就是包裹在花括號中的代碼塊,前面使用了關鍵詞 function:

語法格式如下所示:

function function_name()
{
    // 執行代碼
}

范例

 

function () {   
    // 函數定義
    console.log("調用函數") 
}

 

2. 調用函數

函數只有通過調用才可以執行函數內的代碼。

語法格式如下所示:

function_name()

范例

 

function test() { // 函數定義
    console.log("調用函數") 
} 
test() // 調用函數

 

3. 函數返回值

有時,我們會希望函數將執行的結果返回到調用它的地方。

通過使用 return 語句就可以實現。

在使用 return 語句時,函數會停止執行,并返回指定的值。

語法格式如下所示:

function function_name():return_type { 
    // 語句
    return value; 
}
  • return_type 是返回值的類型。
  • return 關鍵詞后跟著要返回的結果。
  • 一般情況下,一個函數只有一個 return 語句。
  • 返回值的類型需要與函數定義的返回類型(return_type)一致。

范例

 

// 函數定義
function greet():string { // 返回一個字符串
    return "Hello World" 
} 
 
function caller() { 
    var msg = greet() // 調用 greet() 函數 
    console.log(msg) 
} 
 
// 調用函數
caller()
  • 范例中定義了函數 greet(),返回值的類型為 string。
  • greet() 函數通過 return 語句返回給調用它的地方,即變量 msg,之后輸出該返回值。。

編譯以上代碼,得到以下 JavaScript 代碼:

// 函數定義
function greet() {
    return "Hello World";
}
function caller() {
    var msg = greet(); // 調用 greet() 函數 
    console.log(msg);
}
// 調用函數
caller();

 

4. 帶參數函數

在調用函數時,您可以向其傳遞值,這些值被稱為參數。

這些參數可以在函數中使用。

您可以向函數發送多個參數,每個參數使用逗號 , 分隔:

語法格式如下所示:

function func_name( param1 [:datatype], param2 [:datatype]) {   
}
  • param1、param2 為參數名。
  • datatype 為參數類型。

范例

function add(x: number, y: number): number {
    return x + y;
}
console.log(add(1,2))
  • 范例中定義了函數 add(),返回值的類型為 number。
  • add() 函數中定義了兩個 number 類型的參數,函數內將兩個參數相加并返回。

編譯以上代碼,得到以下 JavaScript 代碼:

function add(x, y) {
    return x + y;
}
console.log(add(1, 2));

輸出結果為:

3

 

5. 可選參數和默認參數

1) 可選參數

在 TypeScript 函數里,如果我們定義了參數,則我們必須傳入這些參數,除非將這些參數設置為可選,可選參數使用問號標識 ?。

范例

function buildName(firstName: string, lastName: string) {
    return firstName + " " + lastName;
}
 
let result1 = buildName("Bob");                  // 錯誤,缺少參數
let result2 = buildName("Bob", "Adams", "Sr.");  // 錯誤,參數太多了
let result3 = buildName("Bob", "Adams");         // 正確

以下范例,我們將 lastName 設置為可選參數:

function buildName(firstName: string, lastName?: string) {
    if (lastName)
        return firstName + " " + lastName;
    else
        return firstName;
}
 
let result1 = buildName("Bob");  // 正確
let result2 = buildName("Bob", "Adams", "Sr.");  // 錯誤,參數太多了
let result3 = buildName("Bob", "Adams");  // 正確

可選參數必須跟在必需參數后面。 如果上例我們想讓 firstName 是可選的,lastName 必選,那么就要調整它們的位置,把 firstName 放在后面。

如果都是可選參數就沒關系。

2) 默認參數

我們也可以設置參數的默認值,這樣在調用函數的時候,如果不傳入該參數的值,則使用默認參數,語法格式為:

function function_name(param1[:type],param2[:type] = default_value) { 
}

注意:參數不能同時設置為可選和默認。

范例

以下范例函數的參數 rate 設置了默認值為 0.50,調用該函數時如果未傳入參數則使用該默認值:

function calculate_discount(price:number,rate:number = 0.50) { 
    var discount = price * rate; 
    console.log("計算結果: ",discount); 
} 
calculate_discount(1000) 
calculate_discount(1000,0.30)

編譯以上代碼,得到以下 JavaScript 代碼:

function calculate_discount(price, rate) {
    if (rate === void 0) { rate = 0.50; }
    var discount = price * rate;
    console.log("計算結果: ", discount);
}
calculate_discount(1000);
calculate_discount(1000, 0.30);

輸出結果為:

計算結果:  500
計算結果:  300

 

6. 剩余參數

有一種情況,我們不知道要向函數傳入多少個參數,這時候我們就可以使用剩余參數來定義。

剩余參數語法允許我們將一個不確定數量的參數作為一個數組傳入。

function buildName(firstName: string, ...restOfName: string[]) {
    return firstName + " " + restOfName.join(" ");
}
  
let employeeName = buildName("Joseph", "Samuel", "Lucas", "MacKinzie");

函數的最后一個命名參數 restOfName 以 ... 為前綴,它將成為一個由剩余參數組成的數組,索引值從0(包括)到 restOfName.length(不包括)。

function addNumbers(...nums:number[]) {  
    var i;   
    var sum:number = 0; 
    
    for(i = 0;i<nums.length;i++) {="" sum="sum" +="" nums[i];="" }="" console.log("和為:",sum)="" addnumbers(1,2,3)="" addnumbers(10,10,10,10,10)=""                 
相關文章