作为JavaScript的超集,ts支持与js几乎相同的数据类型。
1、Boolean类型
let areYouOk:boolean = true;
2、数字类型
let a:number = 6;
let b:number = 1_000_000
3、字符串
和js一样可以使用单引号(‘’)或者双引号("")表示字符串
let name:string ="xiaoming";
let othername:string = 'xiaoming'
还可以使用模板字符串,它可以定义多行文本和内嵌表达式,这种字符串是用反引号``包围,并使用$向句子中插入表达式:
let name:string = `xiaoming`;
let age:number = 37;
let sentence:string = `hello,my name is ${name}.
I'll be ${age+1} years old next month;
`
undefined 和 null的定义方式也同样;
4、数组类型
在ts中定义数组有两种方式,第一种方式是可以在元素类型后面直接加上[];第二种方式是使用数组泛型,Array<元素类型>:
let list:number[] = [1,2,3];
第二种方式是使用数组泛型,Array<元素类型>:
let list:Array<number>=[1,2,3];
5、变量声明
let 和 const是es6中新增的变量声明方式,在ts中,let和const的使用方式与es6中一摸一样。
在ts中即便不指定类型,依旧可以根据指定的变量进行类型推断,比如:
let name = "xiaoming"
// let a:string
const age = 5;
//const age:5
let name = `xiaoming`;
name = 1;
//error ts2322:type '1' is not assignable to type 'string'
从这个列子可以得出,如果在初始化阶段已经声明了该变量类型,在中途更改,会触发ts编译报错,编译报错时为我们指出严格的类型检查;
网友评论