JS数据类型

74 阅读1分钟

JS数据类型

基本数据类型: string、number、boolean、undefined、null、bigint、symbol

引用数据类型: object

数据类型的存储位置:

基本数据类型存储在栈(stack)中,引用数据类型存储在堆(heap)中。

数据类型检测方式:

1.typeof

2.instanceof

3.Object.prototype.toString().call()

null和undefined的区别

null是一个表示"无"的对象,undefined是一个表示"无"的原始值。

Number(null) //0
Number(undefined) //NaN
typeof undefined //undefined
typeof null // object
undefined == null //true
undefined === null //false

NaN

1.Not a Number,非数字

2.数据类型是数值类型

typeof NaN //number

Symbol

1.对象的属性名都是字符串,容易造成重名的问题

2.Symbol类型的值是独一无二的

const symbol1 = Symbol()
const symbol2 = Symbol()
console.log(symbol1 === symbol2) //false

==和===的区别

1.==会进行隐式转换

2.===既比较值,还比较类型

[1, 2, 3] == '123' //true