溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

TypeScript中基本數(shù)據(jù)類型的示例分析

發(fā)布時(shí)間:2021-08-19 10:59:59 來(lái)源:億速云 閱讀:152 作者:小新 欄目:web開(kāi)發(fā)

這篇文章主要為大家展示了“TypeScript中基本數(shù)據(jù)類型的示例分析”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“TypeScript中基本數(shù)據(jù)類型的示例分析”這篇文章吧。

TypeScript是由C#語(yǔ)言之父Anders Hejlsberg主導(dǎo)開(kāi)發(fā)的一門編程語(yǔ)言,TypeScript本質(zhì)上是向JavaScript語(yǔ)言添加了可選的靜態(tài)類型和基于類的面向?qū)ο缶幊?,它相?dāng)于是JavaScript的超集

ES5、ES6和TypeScript的關(guān)系:

TypeScript中基本數(shù)據(jù)類型的示例分析

安裝

首先需要安裝npm,然后在輸入

npm install -g typescript

安裝完成后,因?yàn)門ypeScript是以.ts結(jié)尾的,要想運(yùn)行就得把他編譯js文件,編譯的方法特別簡(jiǎn)單就是使用tsc命令

tsc hello.ts

通常在項(xiàng)目中ts文件比較多的情況下,我們需要自己配置tsconfig.json文件,以便能更好的編譯ts文件,配置tsconfig.json文件不難,這里就不贅述,可以自行百度

基本類型

在TypeScript中有以下基本數(shù)據(jù)類型

  ? 布爾類型(boolean)

  ? 數(shù)字類型(number)

  ? 字符串類型(string)

  ? 數(shù)組類型(array)

  ? 元組類型(tuple)

  ? 枚舉類型(enum)

  ? 任意值類型(any)

  ? null和undefined

  ? void類型

  ? never類型

布爾類型(boolean)

布爾類型是最簡(jiǎn)單的數(shù)據(jù)類型,只有true和false兩種值

注意:布爾類型是不能賦予其他值的

let flag: boolean = true;
flag = 1; //報(bào)錯(cuò)

數(shù)字類型(number)

和JavaScript一樣,TypeScript數(shù)字都是浮點(diǎn)型,也支持二進(jìn)制、八進(jìn)制、十進(jìn)制和十六進(jìn)制

let decLiteral: number = 6;
let hexLiteral: number = 0xf00d;
let binaryLiteral: number = 0b1010;
let octalLiteral: number = 0o744;

字符串類型(string)

可以用單引號(hào)(')和雙引號(hào)(")來(lái)表示字符串類型,除此之外還支持使用模板字符串反引號(hào)(`)來(lái)定義多行文本和內(nèi)嵌表達(dá)式。使用${ expr }的形式嵌入變量或表達(dá)式

let name: string = 'Angular';
let years: string = 7;
let words: string = `今年是 ${ name } 發(fā)布 ${ years } 周年`;

數(shù)組類型(array)

TypeScript數(shù)組的操作類似于JavaScript中數(shù)組的操作,TypeScript建議開(kāi)發(fā)者最好只為數(shù)組元素賦一種類型的值,定義數(shù)組有兩種方式

1、在元素類型后面加上[]

let arr: number[] = [2,3];

2、使用數(shù)組泛型

let arr: Array<number> = [2,3];

元組類型(tuple)

元組類型用來(lái)表示已知數(shù)量和類型的數(shù)組,各元素的類型不必相同

let x: [string,number];
x = ['Angular',5]; //正確
x = [5,'Angular']; //報(bào)錯(cuò)

枚舉類型(enum)

枚舉是一個(gè)可被命名的整型常數(shù)的集合,枚舉類型為集合成員賦予有意義的名稱增強(qiáng)可讀性

enum Color {red,green,blue};
let c: Color = Color.blue;
console.log(c); //2

枚舉默認(rèn)下標(biāo)是0,也可以手動(dòng)修改

enum Color {red = 2,green = 3,blue = 6};
let c: Color = Color.blue;
console.log(c); //6

任意值類型(any)

任意值是TypeScript針對(duì)編程時(shí)類型不明確的變量使用的一種數(shù)據(jù)類型,常用于以下三種類型

1、值可能來(lái)自于動(dòng)態(tài)的內(nèi)容,比如來(lái)自用戶輸入或第三方代碼庫(kù)。 這種情況下,我們不希望類型檢查器對(duì)這些值進(jìn)行檢查而是直接讓它們通過(guò)編譯階段的檢查。

let x: any = 1;
x = 'I am a string';
x = false;

2、允許你在編譯時(shí)可選擇地包含或移除類型檢查

let x: any = 4;
x.toFixed(); //正確,并不檢查是否存在

3、定義儲(chǔ)存各種類型數(shù)據(jù)的數(shù)組時(shí)

let arrarList: any[] = [1,'qwe',true];

null和undefined

默認(rèn)情況下null和undefined是所有類型的子類型。 就是說(shuō)你可以把null和undefined賦值給number類型的變量。

然而,如果啟用--strictNullChecks,就可以使得null和undefined只能被賦值給void或本身對(duì)應(yīng)的類型

let x: number;
x = 1;
x = null; //正確

啟用 --strictNullChecks
let y: number;
y = 1;
y = null; //錯(cuò)誤

void類型

使用void表示沒(méi)有任何類型,例如一個(gè)函數(shù)沒(méi)有返回值,意味著返回void

function hello(): void{
  alert('hello Angular');
}

never類型

never是其他類型(包括null和undefined)的子類型,代表從不會(huì)出現(xiàn)的值,這意味著聲明為never類型的變量只能被never類型所賦值,在函數(shù)中通常表示為拋出異?;驘o(wú)法執(zhí)行到終止點(diǎn)

let x: never;
let y: number;
//報(bào)錯(cuò)
x = 123;
//正確
y = x;

以上是“TypeScript中基本數(shù)據(jù)類型的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI