当前位置: 首页 > Web前端 > HTML

TypeScript系列:[1]基本类型

时间:2023-03-28 18:51:05 HTML

与JS相比,TS最大的不同在于它对定义变量的类型进行了标准化,使得程序在运行前能够在语法层面判断传递的数据类型是否合法等待。布尔让isDone:boolean=true;numbers所有数字都是浮点数,这些浮点数的类型是number。除了支持十进制和十六进制字面量,TypeScript还支持ECMAScript2015引入的二进制和八进制字面量。十进制letdecLiteral:number=6;十六进制lethexLiteral:number=0xf00d;二进制letbinaryLiteral:number=0b1010;八进制letoctaLiteral:number=0o744;字符串可以用双引号(")或者单引号(')表示一个字符串。letprojectName:string="notebook";arrayletlist:number[]=[1,2,3];或者letlist:Array=[1,2,3];tuple元组元素组类型允许表示具有已知元素数量和类型的数组,并且每个元素的类型不必相同.letx:[string,number]=['hello',10];枚举enum类型是JavaScript标准数据类型补充.基本使用enumColor{Red,Green,Blue}letcolor:Color=Color.Green;上面颜色的值为1、默认情况下,元素的编号从0开始。当然你也可以手动修改:enumColor{Red=1,Green,Blue}或者,全部使用手动赋值:enumColor{Red=2,Green=4,blue=10}non-numericnumberenumColor{Red="#f00",Green="#0f0",Blue='#00f'}提醒:此时所有的值都要手动赋值。在这点,Color.Green的值是字符串“#0f0”。Any有时候,当你无法确定一个变量的类型时,那么我们可以使用any类型来标记这些变量:letmyValue:any;void声明一个void类型的变量是没有用的,因为你只能给它赋值undefined和null,一般我们在定义一个没有返回值的函数时使用它:functiondoit():void{console.log("Thisfunctionwillnotreturnavalue");}null和Undefined本身意义不大,记住一件事:默认情况下,null和undefined是所有类型的子类型,这意味着你可以将null和undefined赋值给任何类型的变量。strictNullChecks如果修改了ts的配置,比如在tsconfig.json:{compilerOptions:{"strictNullChecks":true}}上面启用了严格的null类型检查,那么null和undefined只能赋值给void和它们各自的值。Never表示永远不存在的值类型,比如必须抛出错误的返回值或者无限循环函数。下面是一个例子:functionerror(message:string):never{thrownewError(message);}Objectobject表示一个非原始类型,即除number、string、boolean、symbol、null或undefined之外的类型.