数据类型的检测方法

数据类型的检测方法

  1. typeof 数据
    可以检测除数组和null之外的数据类型
		var a = 10;
        var str = '字符串';
        var bol = true;
        var b;//声明未赋值默认就是undefined
        var nu = null;
        var arr = [10, 20, 30];
        var obj = {};
        function fn() { }
        console.log(typeof a);//'number'
        console.log(typeof str);//'string'
        console.log(typeof bol);//'boolean'
        console.log(typeof b);//'undefined'
        console.log(typeof obj);//'object'
        console.log(typeof fn);//'function'
		
		//数组和null无法用typeof检测数据类型
		console.log(typeof nu);//'object'
        console.log(typeof arr);//'object'
  1. Array.isArray(数据)
    可以检测数据是否是数组 返回布尔值
    返回true是数组 返回false不是数组
		var a = 10;
        var str = '字符串';
        var bol = true;
        var b;
        var nu = null;
        var arr = [10, 20, 30];
        var obj = {};
        function fn() { }
        console.log(Array.isArray(a));//false
        console.log(Array.isArray(str));//false
        console.log(Array.isArray(bol));//false
        console.log(Array.isArray(b));//false
        console.log(Array.isArray(nu));//false
        console.log(Array.isArray(arr));//true
        console.log(Array.isArray(obj));//false
        console.log(Array.isArray(fn));//false
  1. Obect.prototype.toString.call(数据)
    万能检测数据类型
    可以检测所有的数据类型
		var a = 10;
        var str = '字符串';
        var bol = true;
        var b;
        var nu = null;
        var arr = [10, 20, 30];
        var obj = {};
        function fn() { }
        console.log(Object.prototype.toString.call(a));//[Object Number]
        console.log(Object.prototype.toString.call(str));//[Object String]
        console.log(Object.prototype.toString.call(bol));//[Object Boolean]
        console.log(Object.prototype.toString.call(b));//[Object Undefined]
        console.log(Object.prototype.toString.call(nu));//[Object Null]
        console.log(Object.prototype.toString.call(arr));//[Object Array]
        console.log(Object.prototype.toString.call(obj));//[Object Object]
        console.log(Object.prototype.toString.call(fn));//[Object Function]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值