js判断对象所属基本数据类型和引用类型

/*
 * 原型链
 * js判断对象所属基本数据类型【Undefined、Null、String、Number、Boolean】,引用类型【object、 
 * Array、RegExp、Date、Function】
 */

var hlan = {};

hlan.DataTypes = [
    '[object Null]',
    '[object Undefined]',
    '[object Boolean]',
    '[object Number]',
    '[object String]',
    '[object Function]',
    '[object Array]',
    '[object Date]',
    '[object RegExp]',
    '[object Object]',
];

hlan.Type = function (value) {
    return Object.prototype.toString.call(value);
};

hlan.IsNull = function (value) {
    return hlan.Type(value) == "[object Null]";
};

hlan.IsUndefined= function (value) {
    return hlan.Type(value) == "[object Undefined]";
};

hlan.IsBoolean = function (value) {
    return hlan.Type(value) == "[object Boolean]";
};

hlan.IsNumber = function (value) {
    return hlan.Type(value) == "[object Number]";
};

hlan.IsString = function (value) {
    return hlan.Type(value) == "[object String]";
};

hlan.IsFunction= function (value) {
    return hlan.Type(value) == "[object Function]";
};

hlan.IsArray = function (value) {
    return hlan.Type(value) == "[object Array]";
};

hlan.IsDate = function (value) {
    return hlan.Type(value) == "[object Date]";
};

hlan.IsRegExp= function (value) {
    return hlan.Type(value) == "[object RegExp]";
};

hlan.IsObject = function (value) {
    return hlan.Type(value) == "[object Object]";
};

JavaScript里使用typeof判断数据类型,只能区分基本类型,即:numberstringundefinedbooleanobject
对于nullarrayfunctionobject来说,使用typeof都会统一返回object字符串。
要想区分对象、数组、函数、单纯使用typeof是不行的。在JS中,可以通过Object.prototype.toString方法,判断某个对象之属于哪种内置类型。
分为nullstringbooleannumberundefinedarrayfunctionobjectdatemath

instanceof 操作符判断是否为自定义类型的实例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值