首先,我们应该清楚的知道Javascript中有两种值类型
- 原始值:String、Number、Boolean、undefined、null
- 引用值: Object、function、Array
那么我们发现null是一个比较特殊的值,所以先判断出来,输入的是null的时候,就让它返回String类型的null。
//封装一个函数
function type(target){
//作为一个样板,用来判断用户输入的值类型,输入什么,就返回相对应的类型。
var template = {
"[object Object]" : "Object",
"[object Array]" : "Array",
"[object Number]" : "Number",
"[object String]" : "String",
"[object Boolean]" : "Boolean"
}
if(target === null){
return "null"; //输入的是null的时候,就让它返回String类型的null。
}
if(typeof(target) == "Object"){
var str = Object.prototype.toString.call(target); //判断是什么类型的对象
return template[str]; //对象【属性名】得出属性值
}else{
return typeof(target); //返回原始值
}
我讲解的不明白的地方仔仔可以留言告诉我,既然选择了看这篇文章,就一定要有点什么收获才能走鸭~,有错误的地方,一定要批评指正哦!谢谢阅读!