-
基础类型
-
布尔值
let isDone:boolean=false;
-
数字
支持十进制十六进制二进制、八进制字面量let decList:number=6; let hexLiteral: number = 0xf00d; let binaryLiteral: number = 0b1010; let octalLiteral: number = 0o744;
-
字符串
let str:string='sdfgj'; let str2:string=`sdhkfgfZ${str}`
-
数组
- 在元素类型后面接上[]
let list :number[]=[1,2,3]
- 使用数组泛型,Array<元素类型>
let list:Array<number>=[1,2,3];
-
元组 Tuple
元组类型允许表示一个已知元素数量和类型的数组,各元素的类型不必相同。比如,你可以定义一对值分别为string和number类型的元组。// Declare a tuple type let x: [string, number]; // Initialize it x = ['hello', 10]; // OK // Initialize it incorrectly x = [10, 'hello']; // Error
当访问一个越界的元素,会使用联合类型替代:
x[3] = 'world'; // OK, 字符串可以赋值给(string | number)类型 console.log(x[5].toString()); // OK, 'string' 和 'number' 都有 toString x[6] = true; // Error, 布尔不是(string | number)类型
-
枚举
enum类型是对JavaScript标准数据类型的一个补充。 像C#等其它语言一样,使用枚举类型可以为一组数值赋予友好的名字。enum Color {Red,Green,Blue} let c:Color=Color.Green;
-
Any
当不清楚变量的类型,可以指定为any类型,不接受编译阶段的检查。
let numberPar:any=12; //当不确定数组类型时 let arrayList:any[]=[1,'字符串',true]
-
Void
void类型表示没有任何类型。当一个函数没有返回值是可以定义函数的返回类型为void。
function fn():void{ console.log('这是一个没有返回值的函数'); }
-
Null和Undefined
默认情况下null和undefined是所有类型的子类型,你可以将null和undefined赋值给其他类型的变量。
当你指定了--strictNullChecks
标记,null和undefined只能赋值给void和自身。 -
Never
never是任何类型的子类型,也可以任何类型。
-
Object
object表示非原始类型,也就是除number,string,boolean,symbol,undefined·,null之外的类型
-
类型断言
程序员对数据类型清晰,对数据类型进行特殊指定。
let somestring:any='这是一个字符串'; let stringLength:number=(<string>somestring).length; let stringLength1:number=(somestring as string).length;
-
项目地址:https://gitee.com/jadeflicker/tslearn.git
chapter02分支