数据类型有哪些
基本数据类型:String、Number、Boolean、Null、undefined
引用数据类型:Object、Function、Array
(ES6新增Symbol和Bigint类型)
两种数据类型的区别
基本数据类型存放在栈中,引用数据类型存放在堆中
栈空间通常比较小,引用数据类型所占空间比较大,存放在栈中影响执行效率。
栈中存放的是引用数据类型的数据在堆中的位置。
判断数据类型的方法
-
typeof
可以检测除了null以外的数据 typeof null == ‘Object’ //true
-
instanceof
A instanceof B 检测B的显示原型是否在A的原型链上
例:A instanceof Object // A是否为Object类型
-
Object.prototype.toString.call()
-
A.constructor