TypeScript-any和void类型

any 类型

  • any 表示任意类型, 当我们不清楚某个值的具体类型的时候我们就可以使用 any
  • 一般用于定义一些通用性比较强的变量, 或者用于保存从其它框架中获取的不确定类型的值
  • TS 中任何数据类型的值都可以赋值给 any 类型
let value: any;
value = 123;
value = "BNTang";
value = true;
value = [1, 3, 5];
console.log(value);
  • 如上代码的含义为,定义了一个可以保存任意类型数据的变量

void 类型

  • voidany 正好相反, 表示没有任何类型, 一般用于函数返回值:
function test(): void {
    console.log("BNTang");
}

test();

image-20211127112414357

  • TS 中只有 nullundefined 可以赋值给 void 类型,但是在赋值的过程当中会报错,需要关闭严谨模式如下:

image-20211127112650264

注意点

  • nullundefined 是所有类型的子类型, 所以我们可以将 nullundefined 赋值给任意类型
  • 然后在来看可以赋值 nullundefined
let value: void;
value = null;
value = undefined;
// 👇会报错
// value = true;

console.log(value);

image-20211127112905263

  • 如上 let value: void; 代码的含义为,定义了一个不可以保存任意类型数据的变量, 只能保存 nullundefined

end02

posted @ 2021-11-27 11:32  BNTang  阅读(330)  评论(0编辑  收藏  举报