定義
JavaScript的超級類型,包含
ES6;
靜態(tài)類型語言,類型檢查,接口、oop非常完善;
可以編譯成JavaScript在瀏覽器運行
安裝
npm i typescript -g
tsc常用命令
tsc --init 初始化項目
tsc ./src/xxx.ts 編譯某個文件
tsc -w 檢測變化并編譯
tsconfig.json修改

ts常見類型
boolean布爾類型
let b:boolean=true;
number數(shù)字
let num:number = 20;
string字符串
let str:string = "武漢";
數(shù)組
let arr:number[] =[1,2,3,4];
let arr2:Array<string> = ['我','喜','歡','瓜'];
let arr3:any[]=["abc",456];
任意any
let notSure:any[]=["123","abc",456];
沒有返回void
function fun():void{};
null類型只能是null
let n:null = null
undefined沒有定義
let u:undefined =undefined
接口

實現(xiàn)接口

使用

函數(shù)
函數(shù)返回值
function fun():void{}
無返回值
function fun():string{}
返回字符串類型
[一旦定義了返回類,在函數(shù)內(nèi)部必須要返回該類型]
參數(shù)
參數(shù)指定類型
function add(a:number,b:number):number{xxxxx}
參數(shù)可選
function add(a:number,b?:number):number{xxxxx}
參數(shù)默認值
function add(a:number,b:number=10):number{xxxxx}
箭頭函數(shù)
let add(a:number,b:number):number=>a+b
訪問修飾關(guān)鍵詞
1.修飾詞既可以修飾屬性,也可以修飾方法
[圖片上傳中...(image.png-1484b7-1588007490371-0)]
public默認修飾符,代表公開的
①class內(nèi)部可以訪問
②子類可以訪問
③實例也可以訪問
4.private私有的
①class內(nèi)部可以訪問
②子類不會繼承(不能訪問)
③實例不能訪問
5.protected保護的
①class內(nèi)部可以訪問
②子類會繼承,也可以訪問
③實例不能訪問
6.存儲器
[在設(shè)置或者訪問對象某個屬性時,可以做一些額外操作
實現(xiàn)的封裝,私有變量的隱藏]