基本数据类型(值类型):String、Number、boolean、null、undefined、symbol。
引用数据类型(引用类型)object,包含Function、Array、Date、RegExp、Error都属于Object类型。
tpyeof,通常用来判断基本数据类型,他返回表示数据类型的字符串(返回结果只包括number,boolean,string,function,undefinded,object)使用typeof来判断null和引用类型的实例,返回的结果都是’object’。
typeof 1 //number
typeof 'a' //string
typeof true //boolean
typeof undefined //undefined
typeof null //object
typeof {} //object
typeof [1,2,3] //object
function Fn(){}
typeof new Fn() //object
typeof new Array() //object
NaN是一个特殊的数字,在js中它被认为是一个数字数据类型。
instanceof,判断参照对象的prototype属性指向的对象是否在被行测对象a的原型链上,instanceof只能用来判断两个对象是否属于实例关系,而不能判断一个对象实例具体属于哪种类型。
function A(name,age){
this.name = name;
this.age = age;
}
a = new A('aaa',111);
console.log(a instanceof A) //true
instanceof后面一定要是对象类型,instanceof前面相当于它的实例对象。
对于number,string,boolean这三种基本数据类型,只有通过构造函数定义比如:let num =new Number(1);这样定义才能检测出。 let num = 1; 这样定义是检测不出来的。