:=: any

  1. ## 一般在获取 dom 时使用,在获取不确定的类型值时 也可以使用
  2. let txtName: any = document.getElementById('txtN')
  3. ## 变量可以赋予任何类型的值,赋值完成之后是可以改变的
  4. var s:any = 10;
  5. s ="hello world";

:=: string

  1. var s:string = "hello";

:=: number

  1. var n:number = 10;

:=: boolean

  1. var b:boolean = true;

:=: Array

  1. var arr:string[] = ["hello","world"];
  2. var arr:Array<number> = [1,2,3]; //推荐使用第二种

:=: object

  1. var obj:object = {name:"cheng",age:185}

:=: array-object

  1. var list:Array<object> = [{name:"cheng"}]

:=: function

  1. ## 1.没有返回值的函数
  2. function show():void{
  3. console.log("hello");
  4. }
  1. ## 2.有返回值的函数
  2. function go():string{
  3. return "hello world";
  4. }

:=: 元组(规定了元素数量和每个元素类型的“数组”)

  1. ## 给数组每一个元素指定一种类型
  2. var s:[string,number] = ["hello",1];
  3. console.log(s);

:=: 枚举类型 enum

定义一个特定类型的集合 枚举成员是只读的,不能给其赋值

  1. ## 数字枚举:枚举成员的值为数字,默认情况是数字枚举
  2. ## 特点:成员的值是从0开始自增的数值
  3. enum Status {
  4. success=200,
  5. error=404,
  6. serverError=500
  7. }
  8. var success:Status = Status.success;
  9. console.log(success)
  1. ## 字符串枚举:枚举成员的值为字符串
  2. ## 特点:没有自增行为,需要为每一个成员赋值!
  3. enum Gender { Female = '女', Male = '男'}

:=: null-undefined

  1. var num = null;
  2. num =10 //报错

:=: 联合类型

  1. # 概念:表示取值可以为多种类型中的一种
  2. let 变量名: 变量类型1 | 变量类型2 =
  3. let dName: string | null = prompt('please input name:');

:=: void 类型

  1. # 概念:void 代表没有类型,一般用在无返回值的函数
  2. # 语法:
  3. e&1:
  4. function sayHi1(): string {
  5. return 'hi,hello';
  6. }
  7. let re1 = sayHi1();
  8. e&2:
  9. function sayHi2(): void {
  10. console.log('hi,hello');
  11. }
  12. sayHi2();

:=: never 类型

  1. # 概念:never 代表不存在的值的类型,常用作为抛出异常或无限循环的 函数返回类型
  2. # 语法:
  3. E&1
  4. function test(): never {
  5. while(true){}
  6. }
  7. E&2:
  8. function test2(): never {
  9. throw new Error('异常');
  10. }
  11. # 补充:never 类型是ts中的底部类型,所有类型都是never类型的父类,所以never类型值
  12. # 可以赋给 任意类型的 变量
  13. let x: never = test();
  14. let y: string = test();