TypeScript数据类型

TypeScript的原始数据类型

  • String
  • Number
  • boolean
  • null
  • undefined
  • enum
  • symbol

// Number
var num:number=1;      // 整数
num = 2.5;                  // 小数
num = 0xf00d;               // 十六进制
num = 0b0101;               // 二进制
num = 0o123;                // 八进制

// Boolean
let bol: boolean = false;
bol = true;

// String
let str: string = 'Hello world';
let content: string = `${str} too`;  // 使用表达式拼接字符串时,需要使用(`)符号将拼接内容包括起来

//undefined
var un:undefined=undefined;

//null
var nul:null=null;

无返回值类型

空值一般来说采用void表示,void可以表示变量,也可表示函数无返回值

var callBack=function(){
    return 10;
}

上述代码片段写法,他可以是带返回值也可以无返回值,他不会报任何语法错误,如果说我们在后面加一个void

我们可以发现他是不规范的,void不能有返回值.

同时我们也不能对void类型进行分配

TypeScript 任意值

任意值(Any)用来表示允许赋值为任意类型,声明一个变量任意值之后,对他的任何操作,返回的内容类型都是任意值。
如果变量在声明创建的时候,未指定其类型,那么他会被识别为任意值类型.

var num1:any=1;
num1=true;
num1="str";
num1=null;

/**
 * 如果没有赋值操作那么他会被识别为任意值类型,
 * 他等价于var num2:any;
 */
var num2;

TypeScript类型推论

TypeScript会按照类型推论原则推论出我们的类型

/**
 * 给变量赋值初始值的时候如果没有指定类型,那么他就会根据初始值倒推类型
 * 那么说后续我们只能按照初始值类型进行赋值,当字符串2赋值给b的时候他是不允许的,因为类型不匹配
 */
var b=1
b="2";

如果定义的时候没有赋值,不管之后有没有赋值,都会被推断成any类型而且完全不会被类型检查.

/**
 * 如果没有给b赋初始值就是any类型,他等价于var b:any;
 */
var b;
b="2";
b=true;
posted @ 2020-03-30 21:37  HueiFeng  阅读(628)  评论(0编辑  收藏  举报