在TS中,与JS相对应数据类型

1,887 阅读2分钟

前言

我们知道TSJS的超集,它最终也会编译成JS。与JS相比,TS多了很多东西。今天我们来看看在TS中与JS相对应数据类型

为了方便,计划下篇会介绍TSJS多了哪些类型

这篇先介绍JSTS都有的类型

JS和TS都有的类型

看一下以下8种数据类型:

  1. 基本数据类型:number,string,boolean,undefind,null,symbol,bigInt 其中,后面两个是后来新增的(symbolES2015新增的,bigIntES2020新增的)

  2. 复杂数据类型:object类型 以上这些类型在TS中都有相应的类型,下面来一个个来看

number类型

TS中,可以使用number来表示数值类型

let count: number = 0

注意:与JS一样,数字可以表示为二进制,八进制,十进制和十六进制以及NaNInfinity

string类型

TS中,使用string来表示字符类型

let name: string = 'LBJ' 

boolean类型

TS中,使用boolean来表示布尔类型

const isTrue: boolean = true

需要注意的是,在TSboolean类型只能是truefalse

null和undefined类型

let n1: null = null
let u1: undefined = undefined

注意:定义为null或者undefined类型的,赋值可以为nullundefined其中之一

意味着以下也是可以的

let n2: null = undefined
let u2: undefined = null

symbol类型

const symbol1: Symbol = Symbol('相关描述')

bigInt类型

// bigint数值可以在数字后面加字母n
let b1: bigint = 999999999999999999n
// 也可以使用BigInt构造函数来表示
const b2: bigint = BigInt('9999999999999')

object类型

其实在ts中也有object类型,不同的是它还有Object{}类型,他们之间会有所区别,简单记忆如下:

  • object类型用于表示非原始类型
  • Object类型是所有Object类的实例的类型
  • {}类型描述了一个没有成员的对象

总结

以上就是本文的所有内容,介绍了JSTS都有的类型8种类型,下篇我们将介绍TS中独有的数据类型

如有问题,欢迎指正,感谢!