js基本数据类型
- number:所有数字
- string:单个字符和字符串
- boolean:ture false
- null:null 对象为空
- undefined:变量未初始化,没有值为undefined
- object:除了上述都为对象;
注意:
null == undefined 返回true
null === undefined 返回false
注意:
Number String Boolean 为包装类型
var x = new Number(1);x 的类型为object;
js获取数据类型
-
typeof()只能判断基本数据类型:不能判断数组,Data系统提供的对象具体类型
注意:
typeof(null)返回为object :因为null本质意思是:对象为空。
typeof(function(){})返回为function类型,
typeof ()不能判断对象的具体类型;
typeof(array)返回object;
typeof(date)返回object;
-
Object.prototype.toString.call():可以判断系统提供的所有基本类型,包括对象的具体类型;
注意:Object.prototype.toString.call()不能判断自定义的对象的具体类型; -
instanceof 仅能判断对象的具体类型
instanceof 运算符用来检测 constructor.prototype 是否存在于参数 object 的原型链
注意用法:变量 instansof 对象 后面必须接对象
1 instanceof Number 返回false 1是number数字,而Number是对象
1 instanceof number 报错 number 不是对象 instanceof后面必须接对象
var x = new Number (1);
x instanceof Number 返回true -
constructor 查看对象对应的构造函数
注意:
1.constructor 报错
(1).constructor 把1隐示转换为Number对象类型,返回Number对象类型