Harmony學(xué)習(xí)(三)TS學(xué)習(xí)3

函數(shù)

函數(shù)是由參數(shù),方法體,返回值構(gòu)成。(無(wú)返回值時(shí)使用viod)

1.1函數(shù)的定義

function  ${name}(): ${value}{
  //TODO
}

a.命名定義

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

b.匿名定義

let result=function(x:number,y:number){
  return x+y;
}

c.箭頭函數(shù)

let addNum(x:number,y:number) => number
                  =function(x:number,y:number){
      return x+y;
  }
//簡(jiǎn)寫如下
let addNum(x,y)=> x + y
1.2 可選參數(shù)

在函數(shù)中不是每個(gè)參數(shù)都為必填,參數(shù)為可選或者有默認(rèn)值時(shí)可以不傳入?yún)?shù),如下

  function getUserInfo(name:string,sex?:string,age:number=18){
    if(sex){
      console.log('sex:${sex}')
    }
  console.log('name:${name},age:${age}');
}

getUserInfo('Mr.Li');
getUserInfo('Mr.Li','男');
getUserInfo('Mr.Li','男',24);

必選參數(shù)必須寫在可選參數(shù)之前,否則編譯會(huì)報(bào)錯(cuò)。

1.3剩余參數(shù)

多個(gè)不確定參數(shù)傳入為剩余參數(shù),剩余參數(shù)必須為最后一個(gè)參數(shù)使用否則會(huì)報(bào)錯(cuò),如下

  function getUserInfo(name:string,age:number=18,...more:string[]){
  //TODO 
  }

泛型

2.1 泛型基本使用
funtion doSome<T>(data:T):T{
    return DATA;
 }
//使用
doSome<string>('this is a message')
2.2接口中使用泛型
interface Search {
  <T,Y>(name:T,age:Y):T
}

let fn:Search = function <T, Y>(name: T, id:Y):T {
  console.log(name, id)
  return name;
}
fn('li',11);
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容