在TS中,与JS相对应数据类型
前言
我们知道TS是JS的超集,它最终也会编译成JS。与JS相比,TS多了很多东西。今天我们来看看在TS中与JS相对应数据类型
为了方便,计划下篇会介绍TS比JS多了哪些类型
这篇先介绍JS和TS都有的类型
JS和TS都有的类型
看一下以下8种数据类型:
-
基本数据类型:
number,string,boolean,undefind,null,symbol,bigInt其中,后面两个是后来新增的(symbol是ES2015新增的,bigInt是ES2020新增的) -
复杂数据类型:
object类型 以上这些类型在TS中都有相应的类型,下面来一个个来看
number类型
在TS中,可以使用number来表示数值类型
let count: number = 0
注意:与JS一样,数字可以表示为二进制,八进制,十进制和十六进制以及NaN和Infinity
string类型
在TS中,使用string来表示字符类型
let name: string = 'LBJ'
boolean类型
在TS中,使用boolean来表示布尔类型
const isTrue: boolean = true
需要注意的是,在TS中boolean类型只能是true或false
null和undefined类型
let n1: null = null
let u1: undefined = undefined
注意:定义为null或者undefined类型的,赋值可以为null和undefined其中之一
意味着以下也是可以的
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类的实例的类型{}类型描述了一个没有成员的对象
总结
以上就是本文的所有内容,介绍了JS和TS都有的类型8种类型,下篇我们将介绍TS中独有的数据类型
如有问题,欢迎指正,感谢!
转载自:https://juejin.cn/post/7025529387181146143