function getFunType(para){// para 是 传入的对象
var pattern = /function\s+([\w]+)/ ; // 正则表达式 \w 表示匹配数字或者字母或者下划线, \s 表示匹配空白符
result = [];
if( para.constructor && typeof para.constructor.toString == "function" ){// 处理自定义类型,例如上一篇文章中讲的自定义的类
result = para.constructor.toString().match(pattern);
}
if( result && result.length > 1 ){
return result[1];
}
return typeof para;
var pattern = /function\s+([\w]+)/ ; // 正则表达式 \w 表示匹配数字或者字母或者下划线, \s 表示匹配空白符
result = [];
if( para.constructor && typeof para.constructor.toString == "function" ){// 处理自定义类型,例如上一篇文章中讲的自定义的类
result = para.constructor.toString().match(pattern);
}
if( result && result.length > 1 ){
return result[1];
}
return typeof para;
}
可以判断的类型包括简单类型和内置类型,比如
getFunType(1) 返回 Number
getFunType("ddd") 返回 string
getFunType(new Date()) 返回 Date
getFunType(/function\s+([\w]+)/) 返回 RegExp