typescript学习之数据类型

系统管理员 2023-07-14 08:15 21阅读 0赞

刚到公司,项目居然是用angular写的,太痛苦了,为了项目的需要,开启了ts的学习之路,ts中的数据类型总结如下:

布二类型(boolean)

  1. 定义变量:var bool:boolean = true

数字类型 (number)

  1. 定义变量:var num:number = 123

字符串类型 (string)

  1. 定义变量: var str:string = '123'

数组类型(array)

  1. 定义数组一:var arr:number[] = [1,2,3]; 表示数组中的所有数据都是数字类型
  2. 定义数组二:var arr:Array<number> = [1,2,3]; 这样也表示定义数组,并且数组中的所有数据都是number
  3. 定义数组三:var arr:any[] = [1, 'str', true];// 数组中的数据可以是任何类型

元组类型(tuple)元组类型就是在数组中可以指定数组中的每个元素的类型

  1. var arr:[number, string] = [123, 'this is ts'];

枚举类型 (enum)

我们定义了一个数字枚举, Up使用初始化为 1。 其余的成员会从 1开始自动增长。 换句话说,Direction.Up的值为 1, Down为 2, Left为 3, Right为 4。

  1. enum Color{ bule, red=3, 'orange' }// 定义枚举类型,在前面加一个关键字 enum
  2. var c:Color = Color.red;
  3. console.log(c) // 打印3, 这个意思就是相当于改变了下标
  4. var o:Color = Color.orange;
  5. console.log(o) // 打印了4, 因为下标被改了
  6. enum Color { blue, red, 'orange'}
  7. var c:Color = Color.red
  8. console.log(c) // 打印 1 ,如果没有赋值,就打印下标
  9. enum State { 'undefined' = -1, 'null' = -2 , 'success' = 1}
  10. var e:State = State.null;
  11. console.log(e); // -2

任意类型 (any)

  1. var num:any = 123;
  2. num = 'str';
  3. num = true;
  4. console.log(num) // true 和ES5中没有指定类型的变量有点相似
  5. // 用途:
  6. var box:any = document.getElementById('test');
  7. box.style.color = 'red'

null 、undefined (是never类型的子类型)

  1. var num:number | undefined
  2. console.log(num) // undefined 申明变量未赋值
  3. var num:null:
  4. num = null;
  5. // 一个元素可以设置多个类型
  6. var num:number | null | undefined;

void类型

概念: typescript中的void表示没有任何类型,一般用于定义函数的时候,没有返回值,在ES5中的函数默认返回的时候undefined

  1. function run():void { } // 表示这个函数没有返回任何类型
  2. function run ():number{ return 123 } // 表示该方法必须返回一个数值

never类型

是其他类型(包括null 和 undefined)的子类型, 代表从不会出现的值, 这意味着never的变量只能被never类型所赋值,一般不怎么用

发表评论

表情:
评论列表 (有 0 条评论,21人围观)

还没有评论,来说两句吧...

相关阅读