摘要:另外提供了枚舉類型。數(shù)組和元組數(shù)組有兩種聲明方式元組是一種特殊的數(shù)組元組越界時(shí),會(huì)以聯(lián)合類型來(lái)處理,具體請(qǐng)查閱文檔。枚舉枚舉類型與,語(yǔ)言相比,另外提供了一個(gè)便利特性,可以拿到枚舉的名稱。
變量類型
TypeScript支持的變量類型與JavaScript基本一樣。另外提供了枚舉類型。
這里還是給出一些例子去理解TypeScript的變量類型使用,具體的語(yǔ)言知識(shí)可以查看文檔。
原始類型// boolean let success: boolean = true; // number let num1: number = 12; let num2: number = 0xab; // 支持多種進(jìn)制 // string let str1: string = "abc";
除上述示例,還有null, undefined, symbol類型,可以參看文檔。
數(shù)組和元組數(shù)組有兩種聲明方式:
let arr1: string[] = ["hello", "world"]; let arr2: Array= ["hello", "world"];
元組是一種特殊的數(shù)組
let arr1: ["string", "number"] = ["hello", 123];
元組越界時(shí),會(huì)以聯(lián)合類型來(lái)處理,具體請(qǐng)查閱文檔。枚舉
枚舉類型與C#,Java語(yǔ)言相比,另外提供了一個(gè)便利特性,可以拿到枚舉的名稱。
enum Color {Red = 1, Green, Blue} let colorName: string = Color[2]; console.log(colorName); // 顯示"Green"因?yàn)樯厦娲a里它的值是2any, void
any表示任意類型,可以在類型不確定時(shí)使用(能不用就不要用),如:
第三方的返回值,你無(wú)法確定類型
你不確定你將會(huì)用到哪些類型
void正好相反,表示沒(méi)有類型,一般用于沒(méi)有返回值的函數(shù)
null, undefined類型定義和JavaScript一致
TypeScript里面,可以賦給:本身類型、any、void
objectobject類型是基本的6個(gè)類型之外的其他類型的基類。
使用時(shí)需注意,用object聲明時(shí),后面只能當(dāng)object使用,如:
let a: object = new Date(); a.hasOwnProperty("name"); // ok a.getDate(); // errornever
never是個(gè)比較特殊的類型,表示永遠(yuǎn)不會(huì)到達(dá)。
典型的場(chǎng)景就是異常拋出函數(shù)的返回值。
function bizError(code: number, msg: string): never { throw new Error({ code, msg }); }類型斷言
類型斷言,我覺(jué)得也可以理解為強(qiáng)制類型轉(zhuǎn)換。
這個(gè)特性和強(qiáng)類型語(yǔ)言類型,看幾個(gè)例子理解一下:
// 尖括號(hào)式 let var1: any = "abc"; console.log((類型推斷var1).substring(1)); // as let var2: object = new Array (); console.log((var2 as Array ).push(1));
有些情況下,不需要指明變量類型,TypeScript可以根據(jù)上下文自動(dòng)推斷類型。如下示例:
let a = "abc"; console.log(a.substring(1)); let obj1 = { str1: "abc", num1: 123 }; let { str1, num1 } = obj1;參考
TypeScript語(yǔ)言手冊(cè) https://www.tslang.cn/docs/ha...
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/110303.html
摘要:怎么影響了我的思考方式對(duì)前端開發(fā)者來(lái)說(shuō),能強(qiáng)化了面向接口編程這一理念。使用的過(guò)程就是在加深理解的過(guò)程,確實(shí)面向接口編程天然和靜態(tài)類型更為親密。摘要: 學(xué)會(huì)TS思考方式。 原文:TypeScript - 一種思維方式 作者:zhangwang Fundebug經(jīng)授權(quán)轉(zhuǎn)載,版權(quán)歸原作者所有。 電影《降臨》中有一個(gè)觀點(diǎn),語(yǔ)言會(huì)影響人的思維方式,對(duì)于前端工程師來(lái)說(shuō),使用 typescript 開...
摘要:怎么影響了我的思考方式對(duì)前端開發(fā)者來(lái)說(shuō),能強(qiáng)化了面向接口編程這一理念。使用的過(guò)程就是在加深理解的過(guò)程,確實(shí)面向接口編程天然和靜態(tài)類型更為親密。 電影《降臨》中有一個(gè)觀點(diǎn),語(yǔ)言會(huì)影響人的思維方式,對(duì)于前端工程師來(lái)說(shuō),使用 typescript 開發(fā)無(wú)疑就是在嘗試換一種思維方式做事情。 其實(shí)直到最近,我才開始系統(tǒng)的學(xué)習(xí) typescript ,前后大概花了一個(gè)月左右的時(shí)間。在這之前,我也在...
摘要:學(xué)習(xí)之路學(xué)習(xí)之路安裝環(huán)境起步開發(fā)工具自動(dòng)編譯文件中的數(shù)據(jù)類型中的函數(shù)中類的定義繼承中的繼承中的繼承類的靜態(tài)屬性和靜態(tài)方法類的多態(tài)的抽象類中的接口中的泛型學(xué)習(xí)之路安裝環(huán)境查看版本起步新建通過(guò)命令編譯此時(shí)路徑下 ...
摘要:聯(lián)合類型,指賦值的時(shí)候可以是聯(lián)合類型中的某一個(gè)。任意屬性允許創(chuàng)建對(duì)象的時(shí)候,定義接口中沒(méi)有的屬性。常見(jiàn)的類型推論,還提現(xiàn)在函數(shù)表達(dá)式中。 typeScript是什么? TypeScript 是 JavaScript 的一個(gè)超集,主要提供了類型系統(tǒng)和對(duì) ES6 的支持 安裝typeScript npm install -g typeScript 安裝完成查看版本: tsc -v typ...
閱讀 1603·2021-09-22 15:35
閱讀 2092·2021-09-14 18:04
閱讀 964·2019-08-30 15:55
閱讀 2510·2019-08-30 15:53
閱讀 2745·2019-08-30 12:45
閱讀 1263·2019-08-29 17:01
閱讀 2638·2019-08-29 15:30
閱讀 3564·2019-08-29 15:09