天天看點

三、函數的額定義與調用

轉自:http://www.hubwiz.com/

        在TypeScript中定義函數的文法為:

    function function_name(arg:number,arg1:number,....):return_type{

         code 函數要執行的代碼;

         return data;

    }

  其中 function 為聲明函數的關鍵字,functionname 為自定義函數的名字,arg為參數清單,_return_type為該函數的傳回值類型,code為函數被調用時要執行的代碼,使用return關鍵字傳回資料,data為要傳回的資料,要使用“{}”括起來。函數的調用就很簡單了,如下代碼:

    function add(x: number, y: number): number {  //定義傳回值為number類型的函數

               return x+y;

    add(5,6); //調用函數

    當然也可以沒有傳回值。

匿名函數

  匿名函數是沒有名稱隻有主體的函數,不需要指定傳回類型,它的傳回值類型是從函數主體内的 return 語句推斷的。如下代碼:

    var myAdd = function(x:number, y:number) { //定義匿名函數

         return x+y;

     };

    myAdd(3,4); //調用匿名函數

可選與預設參數

        可選參數:在參數名後面,冒号前面添加一個問号,則表明該參數是可選的。如下代碼:

    function buildName(firstName: string, lastName?: string) { //lastName為可選參數

         if (lastName)

             return firstName + " " + lastName;

         else

             return firstName;

   }

    var result1 = buildName("Bob");  //正确調用 Bob

    var result2 = buildName("Bob", "Adams"); //正确調用 Bob Adams

        預設參數:在參數名後直接給定一個值,如果這個值沒有被傳入,那麼将會被指派為預設值。如下代碼:

    function buildName(firstName: string, lastName = "Smith") {

         return firstName + " " + lastName;

    var result1 = buildName("Bob");  //沒有傳入第二個參數,則被指派為預設的smith,結果為:Bob Smith

繼續閱讀