数据类型
- 基本数据(值)类型:String、Number、Boolean、Null、Undefined、Symbol(es6)
- 对象(引用)类型:Object、Function、Array
判断数据类型
-
typeof(返回数据类型的字符串表达)
可以判断:undefined,number,string,boolean,function
不能判断:null和object,object和array -
===
可以判断:undefined,null -
instanceof(判断一个对象是是否属于一个类的实例)
可以判断:对象的具体类型
<script>
var a;
console.log(a,typeof a,typeof a==='undefined',a===undefined); // undefined "undefined" true true
a = 3;
console.log(typeof a==='number'); // true
a = 'mango';
console.log(typeof a==='string'); // true
a = true;
console.log(typeof a==='boolean'); // true
a = null;
console.log(typeof a,a===null); // object true
var b1 = {
b2: [1,'abc',console.log],
b3: function() {
console.log('b3')
return function() {
return 'mango';
}
}
}
console.log(b1 instanceof Object,b1 instanceof Array); // true false
console.log(b1.b2 instanceof Array,b1.b2 instanceof Object); // true true
console.log(b1.b3 instanceof Function,b1.b3 instanceof Object); //true true
console.log(typeof b1.b2); // object
console.log(typeof b1.b3==='function'); // true
console.log(typeof b1.b2[2]==='function'); // true
console.log(b1.b3()()); //b3 mango
</script>