typeof:检测基本数据类型
"undefined"——如果这个值 未定义;
"boolean"——如果这个值是 布尔值;
"string"——如果这个值是 字符串;
"number"——如果这个值是 数值;
"object" ——如果这个值是 对象或null;
"function"——如果这个值是 函数。
例子:
var s = "Nicholas";
var b = true;
var i = 22;
var u;
var n = null;
var o = new Object():
typeof s; //string
typeof b; //boolean
typeof i; //number
typeof u; //undefined
typeof n; //object
typeof o; //object
instanceof:检测引用类型
语法: result = variable instanceof constructor
用法:不想知道某个值是对象,而是想知道这个值是什么类型的对象
返回:若变量是给定引用类型的实例,则返回true;若变量是基本类型的值,则始终返回false。
person instanceof Object //变量person是Object吗?
colors instanceof Array //变量colors是Array吗?
pattern instanceof RegExp //变量pattern是RegExp吗?
规定:所有引用类型的值都是Object实例。