2023-03-31|閱讀時間 ‧ 約 5 分鐘

函式 function

    函式的核心組成:

    • 函式的本體
    • 函式的參數
    • 函式的回傳值

    函式的基本語法一:

    function 函式名稱(函式參數列表){
      函式內部的程式碼;
      return(回傳值); 
    }
    • 程式碼範例
    function add(n1, n2){
      let result=n1+n2;  
      return result;  
    }

    函式的基本語法二:

    let 函式名稱=function(函式參數列表){
      函式內部的程式碼;
      return(回傳值);
    }
    • 程式碼範例
    let add=function(n1, n2){
      let result=n1+n2;
      return result; 
    }

    箭頭函式語法:

    • 省去關鍵字 function , 用 = 代替
    let 函式名稱=(函式參數列表)=>{
      函式內部的程式碼;
      return(回傳值);
    }
    • 程式碼範例
    let add=(n1,n2)=>{
      let result=n1+n2;
      return result;
    }

    箭頭函式簡化寫法:

    • 可以簡化的箭頭函式, 函式內部只有"回傳值":
    let 函式名稱=(函式參數列表)=>{
      return(回傳值); // 函式內部只有"回傳值"
    }
    • 箭頭函式簡化寫法範例:
    let 函式名稱=(函式參數列表)=>(回傳值);

    箭頭函式簡化程式碼範例:

    • 不可以簡化
    let add=(n1,n2)=>{
      let result=n1+n2;
      return result;
    }
    • 可以簡化
    let add=(n1,n2)=>{   
      return n1+n2;
    }
    • 簡化後的寫法
    let add=(n1,n2)=>(n1+n2);

    練習題:

    • 計算 1+2+3+...+10的結果
    function add(){
      let total=0;
      for(let i=1;i<=10;i++){
          total=total+i;
      } return total;
    }
    let ans=add();
    console.log(ans);  
    • 計算1+2+3+...+max的結果 (自定義最大數字)
    function add(max){ // 參數自定義
      let total=0;  // 宣告變數要在函式裡面
      for(let i=1;i<=max;i++){
          total=total+i;
      } return total; // 回傳值
    }
    let ans1=add(10); // 1+2+3+...+10 的結果
    let ans2=add(20); // 1+2+3+...+20 的結果
    console.log(ans1, ans2); // 印出 回傳值1 , 回傳值2
    • whie 寫法
    function add(max){
      let result=0;
      let i=1;
      while(i<=max){
        result=result+i;
        i++;
      } return result;
    }
    let ans1=add(10); // 1+2+3+...+10 的結果
    let ans2=add(20); // 1+2+3+...+20 的結果
    console.log(ans1, ans2); // 印出 回傳值1 , 回傳值2
    • 箭頭函式的乘法
    let multiply=(n1, n2)=>{
      return n1*n2;
    }
    let ans=multiply(3, 4);
    console.log(ans); // 印出 12
    • 簡寫
    let multiply=(n1, n2)=>(n1*n2);
    let ans=multiply(3, 4);
    console.log(ans); // 印出 12

    分享至
    成為作者繼續創作的動力吧!
    © 2024 vocus All rights reserved.