JS中有两种数据类型,一种是原始值类型,一种是对象类型。
原始值类型(俗称:基本数据类型)
+number //数字类型
+string //字符串类型
+boolean //布尔类型
+null //空
+undefined //未定义
+symbol //唯一
+bigint //大数
null 和undefined区别:null代表有值,但是这个值是空的,undefined代表没有给这个值赋值
null==undefined //true
null===undefined //false
undefined的几种情况:1,使用var let const等声明的变量没有赋值
2,var声明的变量在赋值前使用(var声明的变量会变量提升)
3,访问对象中未定义的属性
4,function中没有return 默认返回undefined
对象类型(俗称:引用数据类型)
+标准普通对象(纯粹对象)obj={ } obj.__proto__==Object.prototype
+标准特殊对象 例如数组,正则,日期,错误...
+非标准特殊对象 Number String Boolean Null Undefined Symbol Bigint 这些原始值类型对应的对象。let n=New Number()
+可调用执行对象 (内部实现call)也称为函数对象