function type(obj){ var objType=Object.prototype.toString.call(obj).slice(8,-1).toLowerCase(); console.log(objType); } type(1); type(new Number(1)); type("abc"); type(new String("abc")); type(true); type(undefined); type(null); type({}); type([]); type(new Date); type(/d/); type(function(){});
Object.prototype.toString.call(obj)将返回一个字符串,例如
Object.prototype.toString.call(1) 将返回:[object Number] 所以可以使用slice()方法截取,再用
toLowerCase() 变为小写字母。