代码:
function getType(val){
this.val = val
this.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)