代码:
function getType(val){this.val = valthis.isInt = function(val){ if((typeof(val)=='number')||(val instanceof Number)){ if(/^\d*$/.test(val)){ return true }else{ return false } }else{ return false }}this.isFloat = function(val){ if((typeof(val)=='number')||(val instanceof Number)){ if(/^\d*\.\d*$/.test(val)){ return true }else{ return false } }else{ return false }}this.isString = function(val){ if((typeof(val)=='string')||(val instanceof String)){ return true }else{ return false }}this.isBoolean = function(val){ if((typeof(val)=='boolean')||(val instanceof Boolean)){ return true }else{ return false }}this.isArray = function(val){ if(val instanceof Array){ return true }else{ return false }}this.isObject = function(val){ if(val instanceof Object && typeof val.length == 'undefined'){ return true }else{ return false }}this.dump = function(){ var val = this.val var isint = this.isInt(val) var isfloat = this.isFloat(val) var isstring = this.isString(val) var isbool = this.isBoolean(val) var isarray = this.isArray(val) var isobject = this.isObject(val) if(isint){ return 'int' }else if(isfloat){ return 'float' }else if(isstring){ return 'string' }else if(isbool){ return 'boolean' }else if(isarray){ return 'array' }else if(isobject){ return 'object' }}}var a = new getType(1)var aa = a.dump()var b = new getType(1.1)var bb = b.dump()var c = new getType('hello')var cc = c.dump()var d = new getType(true)var dd = d.dump()var e = new getType([1,2])var ee = e.dump()var f = new getType({name:'lee'})var ff = f.dump()console.log(aa)console.log(bb)console.log(cc)console.log(dd)console.log(ee)console.log(ff)
输出:
intfloatstringbooleanarrayobject