1.使用typeof 区别null,数组,对象
```javascript
function getDataType1(o) {
if (o === null) {
return 'null'
} else if (typeof o === 'object') {
if (typeof o.length === 'number') {
return 'array'
} else {
return 'object'
}
} else {
return 'param is no object type'
}
}
## 2.使用instanceof 区别null,数组,对象
```javascript
function getDataType2(o) {
if (o === null) {
return 'null'
}
if(o instanceof Array) {
return 'array'
}else if (o instanceof Object) {
return 'object'
}else {
return 'param is no object type'
}
}
3.使用Object.prototype.toString.call()
Object.prototype.toString.call([])
Object.prototype.toString.call(null)
Object.prototype.toString.call({})