原理:利用JavaScript原生原型扩展函数Object.prototype.toString.call
封装:
1 2 3 4 5 6 7 8 9 10 11 12 | var Type = (function() { var type = {}; var typeArr = [ 'String' , 'Object' , 'Number' , 'Array' , 'Undefined' , 'Function' , 'Null' , 'Symbol' ]; for ( var i = 0; i < typeArr.length; i++) { (function(name) { type[ 'Is' + name] = function(obj) { return Object.prototype.toString.call(obj) == '[object ' + name + ']' ; } })(typeArr[i]); } return type; })(); |
调用:Type.Is[ 数据类型名称 ]( 需要被判断数据
) 数据类型:
'String', 'Object', 'Number', 'Array','Undefined', 'Function', 'Null', 'Symbol'
例:Type.IsFunction(
function
() {}) //true Type.IsObject(0) /false
参考链接:
JavaScript数据类型判断 - detanx_墨鼬漓 - 博客园