这里参考了jQuery的做法:
var class2type={}; //定义一个对象
var typeArr = "Boolean Number String Function Array Date RegExp Object".split(" ");//将所有的类型放到一个数组
for(var i=0,len=typeArr.length;i<len;i++){
var name=typeArr[i];
class2type[ "[object " + name + "]" ] = name;
}
function getType( obj ) {
return obj == null ?
String( obj ) :
class2type[ Object.prototype.toString.call(obj) ] || "undefined";
}
console.log(getType("abc"));//字符串String
console.log(getType(1));//数字Number
console.log(getType(null));//null
console.log(getType(undefined));//undefined
console.log(getType(function(){}));//Function
console.log(getType({}));//Object
console.log(getType(/test/));//RegExp
console.log(getType(true));//Boolean
console.log(getType([]));//Array
console.log(getType(new Date()));//Datevar class2type={}; //定义一个对象
v