TypeScript 基础类型
typeScript 的基础类型有以下几种:
布尔值
let isDone: boolean = false;
数字
TypeScript里的所有数字都是浮点数。 这些浮点数的类型是 number
。 除了支持十进制和十六进制字面量,TypeScript还支持ECMAScript 2015中引入的二进制和八进制字面量。
let decLiteral: number = 6;
let hexLiteral: number = 0xf00d;
let binaryLiteral: number = 0b1010;
let octalLiteral: number = 0o744;
字符串
可以使用双引号( "
)或单引号('
)表示字符串。
let name: string = "bob"; name = "smith";
模版字符串,它可以定义多行文本和内嵌表达式。 这种字符串是被反引号包围( `
),并且以${ expr }
这种形式嵌入表达式
let name: string = `Gene`;
let age: number = 37;
let sentence: string = `Hello, my name is ${ name }.
I'll be ${ age + 1 } years old next month.`;
这与下面定义sentence
的方式效果相同:
let sentence: string = "Hello, my name is " + name + ".\n\n" +
"I'll be " + (age + 1) + " years old next month.";
数组
//第一种定义数组的方式
let arr:string[] = ["php","java","c"];
//第二种定义数组的方式
let arr:Array<number> =[11,22,33]
元组
let arr:[string,number,boolean] = ['xx',1,true];
枚举
enum Flag{
success = 1,
error = 0
}
var f:flag = Flag.success;
enum Color {red,blue,green}
car c:Color = Color.blue;
console.log(c); //1
Any:任意类型
var tag:any = 123;
tag ="xxx";
tag=true;
var oBox:any = document.getElementById('xx');
oBox.style.color = 'red';
void:typeScirpt 中的void表示没有任何类型,一般用于定义方法的时候没有返回值。
function fun():void{
console.log('run');
}
fun();
Null 和 Undefined(never类型的子类型)
var num:number;
console.log(num); //输出:undefined 报错;
var num:undefined;
console.log(num);//输出undefined 不会报错;
var num:number | undefined;
num = 123;
console.log(num);
var num:number | undefined;
console.log(num); //不会报错
never: 是其他类型(包括 null 和undefined),代表从不会出现的值,这意味着如果声明never的变量只能被never类型所赋值。
var a:undefined;
a = undefined;
var b:null;
b = null;
a=(()=>{
throw new Error('错误');
})()