typescript的数据类型
boolean(布尔类型)
number(数字类型)
string(字符串)
array (数组类型)
tuple (元组类型)
enum (枚举类型)
any (任意类型)
null(其他类型(never类型)的子类型)
undefinde (其他类型(never类型)的子类型
void(没有任何类型)
never
用法
- 在变量后面加数据类型(代表这个变量只能赋值该类型的数据)
var a:boolean =true
var b:number =1232
- 定义数组Array
- 第一种
- number类型的数组(数组中只能出现number类型)
var arr:number[] = [1,12,35,456]
- string类型的数组(数组中只能出现string类型)
var arr:string[] = ["1212","qwqw","12sdad"]
- number类型的数组(数组中只能出现number类型)
- 第二种
- number类型的数组(数组中只能出现number类型)
var arr:Array<number> = [1,12,35,456]
- string类型的数组(数组中只能出现string类型)
var arr:Array<string> = ["1212","qwqw","12sdad"]
- number类型的数组(数组中只能出现number类型)
- 第三种
- 任意类型
-
var arr3:any[] = ['123123',1232] console.log(arr3)
-
- 任意类型
- 第一种
- 元组类型[string,number,boolean]
- 它属于数组的一种,可以指定数组里每个元素的类型
var arr:[string,number,boolean] = ["挨打",123,true]
- 它属于数组的一种,可以指定数组里每个元素的类型
- 枚举类型 enum
- 主要用来定义标识符的
-
enum 枚举名 {标识符="内容",标识符="内容",标识符="内容"} //获取内容 枚举名.标识符 var 变量名:枚举名 = 枚举名.标识符
- 例如:
-
状态 : a 表示 已完成;b表示 未完成
-
enum aaa {a="已完成",b="未完成"}; var b:aaa=aaa.0; console.log(b) //已完成; console.log(aaa.b)//未完成
-
enum Color {red,green,blue}; var c:Color =Color.green;console.log(c)//1
-
如果不标识符赋值就输出索引
-
-
enum Color {red,green=5,blue}; var c:Color =Color.red;console.log(c)//0; var c:Color =Color.green;console.log(c)//5; var c:Color =Color.blue;console.log(c)//6;
-
blue没有值,就是以上一个值为基准,上一个值为5,blue就为6
-
-
-
- 主要用来定义标识符的
- 任意类型any
var a:any = 123
- 任意类型的作用:
-
var div:any = document.getElementById('div') div.style.color='red'
-
- null和undefined
-
var num:number; console.log(num)// undefined 报错
-
var num:undefined ; console.log(num)// undefined 不报错
- 一个元素可能是number 可能是null可能是undefined
var num:number | null |undefined
-
- void类型
- 表示没有任何类型,一般定义方法的时候没有返回值
- 如果方法没有返回值
-
function run ():void{ console.log('run') } run()
-
- 方法有返回值
-
function run ():number { return 12 } run()
-
- never包括null和undefined代表从不会出现的值
- 声明never类型只能never类型所赋值
-
一般用不着可以用any代替var ha:never; ha = (()=>{ throw new Error('错误'); })()
-
- 声明never类型只能never类型所赋值