1蹂窖、布爾類型
布爾值類型是最簡單的類型唤衫,只有兩個(gè)值true和false
let a:boolean = true ;
a = 3; ?//報(bào)錯樊零,不能把數(shù)字類型賦值給一個(gè)boolean類型
2、數(shù)字類型
和JavaScript一樣,TypeScript里的所有數(shù)字都是浮點(diǎn)數(shù), TypeScript同事還支持二進(jìn)制邓尤、八進(jìn)制、10進(jìn)制贴谎、16進(jìn)制
let decLiteral: number = 6;
let hexLiteral: number = 0xf00d;
let binaryLiteral: number = 0b1010;
let octalLiteral: number = 0o744;
3汞扎、字符串類型
和JavaScript一樣,可以使用雙引號(")或單引號(')表示字符串擅这。
let? a:string = "hello";
let? b:string= 'hello';
console.log(a === b );//true;
4澈魄、數(shù)組類型
TypeScript像JavaScript一樣可以操作數(shù)組元素。有兩種方式可以定義數(shù)組
(1).在元素類型后面加[]
let arr:number[] =[1,2,4,5];
console.log(arr);
(2).使用數(shù)組范型定義
let arr:Array = [1,3,4,5];
console.log(arr);
注:賦值的時(shí)候?qū)?yīng)的值必須是尖括號(<>)里面定義類型仲翎,否則編譯不通過痹扇;或者把類型定義為any類型
5、元組類型
元組類型允許表示一個(gè)已知元素?cái)?shù)量和類型的數(shù)組溯香,各元素的類型不必相同
let tuples:[number,string,boolean]=[1233,'eleven',true];
Console.log(tuples);// [1233,'eleven',true]
(1).如果賦值的時(shí)候鲫构,超出([number,string,boolean])你所聲明的元組類型時(shí),只要滿足三者類型之一就可?看例子:
let tuples:[number,string,boolean]?
console.log(tuples[3]='222');//打印222
(2).如果賦的值的類型不在三者范圍編譯報(bào)錯:看例子
let tuples:[number,string,boolean]
console.log(tuples[4]={"name":"小明"});// 這里賦值對象,編譯不通過
6玫坛、枚舉類型
枚舉可以定義一些具有名字的數(shù)字常量(可以理解js的常量)结笨,和在C語言中一樣都是使用關(guān)鍵字enum,一個(gè)枚舉類型可以有多個(gè)枚舉成員湿镀,每個(gè)枚舉成員都有一個(gè)對應(yīng)的數(shù)字值炕吸,這個(gè)數(shù)字值可以是常數(shù)(可以理解js的常量)或者是計(jì)算出來值。如果沒有對一個(gè)枚舉初始化勉痴,那么它的初始值為0赫模。
我們看看例子:
(取值可以通過對象自變量方式取:console.log(a['Right']);或者console.log(a.Right);
(1).沒有初始化枚舉的情況下
enum a {
Up,
Down,
Left,
Right
};
console.log(a);//打印出來Up=0, Down=1,Left=2 ,Right =3;
(2).給枚舉賦值的情況下
enum b {
Up,
Down=10,
Left,
Right
};
console.log(b);//打印出來Up=0, Down=10,Left=11 ,Right =12;
(3).給第一枚舉成員賦值的情況下
enum c {
Up=10,
Down,
Left,
Right
};
console.log(c);//打印出來Up=10, Down=11,Left=12 ,Right =13;
結(jié)論:當(dāng)沒有給枚舉賦初始值的時(shí)候蒸矛,數(shù)字值從0開始逐漸加1瀑罗;當(dāng)給枚舉值賦初始值時(shí),數(shù)值從第一個(gè)枚舉成員開始逐漸加1雏掠;當(dāng)給其它枚舉成員(除了第一個(gè))賦值時(shí)斩祭,從當(dāng)前枚舉成員開始逐漸加1
7、任意值類型(any)
任意值類型磁玉,用關(guān)鍵字any修飾的變量停忿,類似JavaScript弱類型,不存在類型檢測
看例子:
let a: any = 123;
console.log(a);//輸出:123 數(shù)字類型
a = "小明";
console.log(a);//輸出:小明, ?字符串類型
a = {name: ‘張三'};
console.log(a.name);//輸出: 對象類型
//一個(gè)變量可以多次賦不同類型的值蚊伞,跳過了類型檢測
注:但是在開發(fā)中按實(shí)際情況定義類型席赂,應(yīng)該加強(qiáng)數(shù)據(jù)類型檢測吮铭,少用any
個(gè)人學(xué)習(xí)心得,大神路過 颅停,不喜勿噴??? 谓晌,如果你覺得不錯,歡迎點(diǎn)贊癞揉,訂閱纸肉,分享出去給需要的人,筆者將非常感謝
<完>
如果你是喜歡看書的朋友喊熟,不妨點(diǎn)擊【有驚喜】這是我在亞馬遜買的電子書柏肪,都非常珍貴。希望你能喜歡
作者:小處成就大事
簡介:一個(gè)喜歡分享和學(xué)習(xí)的前端開發(fā)程序猿芥牌,平時(shí)喜歡看看書烦味,游泳,爬山壁拉,戶外騎行等谬俄,期待與志同道合的你成為朋友,一起交流弃理、一起進(jìn)步溃论。
初衷:閑時(shí)喜歡寫一些文章分享,記錄豐富自己痘昌≡垦可能沒有別人寫得好,但是我寫的每一篇都非常用心和投入控汉。真心希望來到這里對你有所收獲笔诵,我將非常開心很欣慰返吻。
博客:小處成就大事_新浪博客
如果有志同道合的朋友不妨加微信一起交流和學(xué)習(xí)姑子,期待你的到來