版权声明:版权声明:@BU-KX-Z 本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_41539580/article/details/82505222
JavaScipt 数据类型
在JavaScript中有六种原始数据类型:
number
string
boolean
null
undefined
object
typeof()有六种返回值:
number
string
boolean
object
undefined
function
注:复杂数据类型,如果是对象,则返回的是object,如果的function类型,则返回的是function。
注:typeof() 返回值永远是字符串。
常见typeof()数据类型判断如下:
var num = 10;
var str = "小白";
var boole = true;
var booleo = false;
var nll = null;
var unde;
var obj = new Object();
var fun = function () {}; //复杂类型
typeof(num); // number
typeof(str); // string
typeof(boole); // boolean
typeof(null); // object 给对象站位置
typeof(unde); // undefinde
typeof(object); // object
typeof(fun); // function
对于原始值的包装类显示的结果为object,无法清楚的辨别具体的数据类型。
可以用Object.prototype.toString.call(new String) 来判断,太过麻烦
所以,封装出一个type方法,使得那些特殊的变量都能让我们很清楚地辨别出其类型。
代码如下:
function type(target) {
var tyepOf = tyepof(target),
template = {
"[object Array]" = "array ----> object",
"[object Object]" = "object ----> object",
"[object String]" = "string ----> object",
"[object Boolean]" = "boolean ----> object",
"[object Number]" = "number ----> object"
};
// 判断是否为null
if(target == null) {
return "null";
}else if(tyepOf == 'object') {
var toStr = Object.prototype.toSting.call(target);
return template[toStr];
}else {
return tyepOf;
}
}