這是我參與8月更文挑戰的第11天,活動詳情查看:8月更文挑戰數組
TypeScript
可是平時業務上面都仍是用JavaScript
來開發致使逐漸對TypeScript
生疏了。TypeScript
的知識吧。TypeScript
的基礎知識過了一遍,是否是發現其實也不會很難呢。TypeScript
進階篇的第一篇,關於基礎篇能夠看我以前分享的文章喔~。type
名稱
= 類型
]type otherType=number;
let other:otherType;
other=5;
複製代碼
JavaScript
後:var other;
other = 5;
複製代碼
type otherObj={
name:string
};
interface sthObj{
name:string
};
let obj1:otherObj={
name:'掘金'
};
let obj2:sthObj={
name:'小盧'
};
複製代碼
type
只是起了別名,因此當咱們要給類型拓展的時候就要使用接口了,由於type
不能夠被繼承。類型別名經常使用於聯合類型。type
名稱
= 字符串
]type sthingFruit= "apple" | "banana" | "mango";
let fruit:sthingFruit;
fruit="apple";
fruit="grapes"; //報錯
複製代碼
sthingFruit
約束爲只能接受 apple
banana
mango
的一個類型,那麼其餘變量在使用這個類型的時候就只能選擇裏面容許的值,像上面給他一個grapes
是不可取的。let fruit:string[]=['apple','banana',"mango"];
let fruit1:string[]=['apple','banana',25]; //報錯
複製代碼
string
類型的數組添加number
類型的數值,他就會報錯不能將類型「number」分配給類型「string」
。JavaScript
中的數組沒有這些限制,那有沒有一種狀況咱們TypeScript
一個數組中也能夠既能夠有string
類型又有number
類型呢?這時候就須要咱們的元組
出場了。Tuple
)合併了不一樣類型的對象,咱們能夠這樣書寫。let fruit:[string,number,string];
fruit=['apple',25,'banana'];
fruit=['apple',25]; //報錯
複製代碼
:
定義的類型格式數量一致。let fruit:[string,number,string];
fruit=['apple',18,'banana'];
fruit[0]='watermelon';
fruit[1]=20;
fruit[3]=21; //報錯 類型不對
複製代碼
push
的時候是能夠添加約束的類型的值的。let fruit:[string,number];
fruit=['apple',18];
fruit.push('banana');
fruit.push('grapes');
fruit.push('oranges');
複製代碼
push
的數值必須是以前定義的類型,至關於把類型限制於以前定義的類型的聯合類型,正如上面的string
number
。TypeScript
的學習,接下來我會持續輸出TypeScript
相關的知識,你們能夠一塊兒來學習。「TypeScript」入門基礎(一)🎯markdown