基本(值)类型
- String :任意的字符串
- Number:任意的数字
- Boolean:true false
- Undefined:undefined
- Null : null
对象(引用)类型
- Object: 任意对象
- Function:一种特别的对象(可以执行)
- Array:一种特别的对象(数值下标数据,内部数据是有序的)
判断数据类型
typeof
- 返回数据类型的字符串表达
- 可以判断:undefined/数值/字符串/boolean/function
- 不能判断:null与 object 、array
var a ;
console.log(a ,typeof a); //'undefined'
instanceof
- 专门用来判断对象的具体类型
=== / ==(一个会数据转换一个不会,尽量用===判断俩个变量是否完全相等)
- 可以专门判断null
```javascript
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
var a ;
a=3;
console.log(typeof a==='number');
a='atghksad';
console.log(typeof a==='string');
a=false;
console.log(typeof a==='boolean');
a=null;
console.log( a===null);
var b1 = {
b2:['1','的付款了','法国蛤科给',console.log],
b3:function(){
console.log('b3');
}
}
console.log(111,b1 instanceof Object,b1 instanceof Array);
console.log(b1.b2 instanceof Object,b1.b2 instanceof Array);
console.log(b1.b3 instanceof Object,b1.b3 instanceof Array,b1.b3 instanceof Function);
console.log('sgskdgn',typeof b1.b3 ==='function');
console.log('111', typeof b1.b2[3] ==='function');
b1.b2[3](11111111111)
</script>
</body>
</html>