function isType(type) {
return function(obj) {
return {}.toString.call(obj) == "[object " + type + "]"
}
}
var isObject = isType("Object")
var isString = isType("String")
var isArray = Array.isArray || isType("Array")
var isFunction = isType("Function")
var isUndefined = isType("Undefined")
不使用typeof obj == type是因为,这种方式无法判断是否数组,因为typeof [1,2]的结果就是object,而上面的方式是可以判断出数组的