JS高级—数据类型
分类
基本(值)类型
String:任意字符串
Number:任意的数字
Boolean:true/false
undefined:undefined
null:null
对象(引用)类型
Object:任意对象
function:一种特别的对象(可执行的)
array:一种特别的对象(数值下标属性)
判断
typeof:
可以判断 undefined/数值/字符串/布尔类型
不能判断 object array
instanceof:专门用来判断对象的具体类型 返回的是布尔值
===: 全等 (尽量用三个等号)
可以判断 undefined null
案例
// 基本
// typeof 返回数据类型的形式
var a;
console.log(a,typeof a,typeof a==='unfedined',a===undefined);
typeof 返回的是以字符串形式
可以通过 === 来判断是否等于指定的数据类型
a=3;
console.log(typeof a==='number')
a='zhanghan';
console.log(typeof a==='string')//注意大小写
a=true;
console.log(typeof a==='boolean')
a=null;
console.log(a)
console.log(a===null);
也可以通过 instanceof 来判断对象的具体类型 返回值为布尔类型
// 对象
var b1={
b2:[1,'231',123,console.log],
b3:function(){
console.log('b3');
return function(){
return 'zhanghan'
}
}
}
// A instanceof B 的实例
// A 是不是 B 的实例
console.log(b1 instanceof Object,b1 instanceof Array);
console.log(b1.b2 instanceof Array,b1.b2 instanceof Object);
运行结果
也可以通过该方法对对象里面的函数进行调用
console.log(b1.b3()());//第一个括号得到函数 第二个括号得到返回值
运行结果