TypeScript 簡單理解

***給博主點贊,送一套Webpack打包配置,最下方有介紹***

TypeScript VS prop-typestypescript

1.TypeScript是靜態類型檢查,prop-types是在運行時進行檢查。
前者會提示你類型有誤,但在瀏覽器裏是能夠正常運行的。而
prop-types是在瀏覽器裏就會給出提示。
2.PropTypes是組件接收prop的約束,而typescript類型約束主要是參數傳遞以及返回值的約束,側重點不同

1.基礎類型數組

boolean
number
string
any[]  number[]  string[] {另外一種寫法 Array[any] }
void 
Object

2.斷言瀏覽器

let strlength:number= (somevalue as string).length
目的:防止somevalue因爲類型錯誤致使頁面報錯

3.接口類型ui

interface Label{
   label:string
}

4.經過extends 來繼承類
5.默認參數spa

(1).必填的放前面;
(2).選填加問號

6.多參數類型定義rest

function buildName(firstName: string,...restOfName:any[]){

}

7.泛型code

泛型就是解決 類 接口 方法的複用性、以及對不特定數據類型的支持(類型校驗)
泛型:軟件工程中,咱們不只要建立一致的定義良好的API,同時也要考慮可重用性。組件不只可以支持當前的數據類型,同時也能支持將來的數據類型,這在建立大型系統時爲你提供了十分靈活的功能。
在像C#和Java這樣的語言中,可使用泛型來建立可重用的組件,一個組件能夠支持多種類型的數據。 這樣用戶就能夠以本身的數據類型來使用組件。

例子:對象

function getData<T>(value:T):T{
      return value
}

8.兼容性blog

變量賦值的兼容性,賦值以後應該對舊值的屬性要求有沒有改變才容許賦值

9.交叉類型繼承

就是說這個類型的對象同時擁有了這三種類型的成員

10.聯合類型

padding: any  轉成  padding: string | number  
可是當訪問聯合類型時,只能訪問共有成員,避免出錯,須要類型斷言

11.迭代器和生成器

let pets = new Set(["Cat", "Dog", "Hamster"]);
pets["species"] = "mammals";
{...pets}   //{species: "mammals"}
[...pets]   // ["Cat", "Dog", "Hamster"]
很無敵,對象和數組都放在一塊兒了

12.模塊

export和import均可以導出重命名    
ts官方文檔如是說:TypeScript和ECMAScript2015同樣,任何包含頂級import或者export的文件都被當成一個模塊。其實,也不必定是頂級。以上就是對什麼叫模塊的簡單認知。

13.聲明合併

interface Box {
    height: number;
    width: number;
}

interface Box {
    scale: number;
}

let box: Box = {height: 5, width: 6, scale: 10};

須要的聯繫博主
image.png

相關文章
相關標籤/搜索