[TOC]
## 1、JS的数据类型有哪些?typeof运算符的执行结果都有哪些数据类型?
数据类型主要包括两部分:
基本数据类型: Undefined、Null、Boolean、Number和String
引用数据类型: Array 、Object
typeof运算符的结果类型:
number,string,boolean,object,function,undefined
## 2、null,undefined 的区别?
null 表示一个对象被定义了,值为“空值”;
undefined 表示不存在这个值。
## 3、怎么判断一个变量没有被定义
typeof bianliang ==”undefined”
## 4、= 和 == 和 === 的区别?
= : 用于赋值
== : 用于判断
=== : 用于判断,必须类型和值,同时相等,才是等
## 5.javascript做类型判断的方法有哪些?
typeof、instanceof 、constructor
### 1、typeof判断基本数据类型
console.log(typeof []) //object
console.log(typeof 1) //object
### 2、instanceof判断引用类型
instanceof 是用来判断 A 是否为 B 的实例;instanceof 检测的是原型
console.log([] instanceof Array) // true
console.log(new Date() instanceof Date); // true
### 3、constructor
让对象的constructor手动指向自己
alert(c.constructor === Array) ----------> true
## 6.判断是否为数组
```
Array.isArray(arr)
arr instanceof Array
Object.prototype.toString.call(arr) === “[object Array]”
arr.constructor.name===’Array’
```