转载!javascript3种检测变量类型的方法
来源:互联网 发布:网络歌手陈柯 编辑:程序博客网 时间:2024/06/16 11:46
出处http://www.cnblogs.com/PolarisSky/p/5276483.html
1、typeof检测变量类型
typeof检测变量类型只能返回:number、string、boolean、undefined、function、symbol、object这七种值,可以用来判断基本数据类型,但对于判断引用类型来说还不够具体。这里需要注意的是对于函数、null的typeof检测结果。
1 console.log(typeof 1);//number2 console.log(typeof "a");//string3 console.log(typeof true);//boolean4 console.log(typeof undefined);//undefined5 console.log(typeof (function func(){}));//function6 console.log(typeof Symbol())//symbol7 console.log(typeof null);//object8 console.log(typeof {});//object
2、instanceof检测变量类型
1 console.log({} instanceof Object);//true2 console.log([] instanceof Array);//true3 console.log([] instanceof Object);//true4 console.log((function func(){}) instanceof Function);//true5 console.log((function func(){}) instanceof Object);//true6 console.log(/a{3}/gi instanceof RegExp);//true7 console.log(/a{3}/gi instanceof Object);//true
instanceof只可以用来判断引用类型变量的具体类型,不可以用来判断基本数据类型(如果使用instanceof操作符检测基本数据类型的值,则该操作符返回结果始终都是false)。使用instanceof时,只要后面的数据类型处于引用类型变量所属类型的原型链上,结果都将返回true。所有引用类型的值都是Object实例,所以所有引用类型变量的instanceof Object都将返回true。
3、constructor检测变量类型
对于所有引用类型的变量,都有一个属性constructor,该属性指向该引用类型的构造函数。当然,constructor不能用于基本数据类型的类型检测。
1 console.log({}.constructor===Object);//true2 console.log([].constructor===Array);//true3 console.log([].constructor===Object);//false4 console.log((function func(){}).constructor===Function);//true5 console.log((function func(){}).constructor===Object);//false6 console.log((/a{3}/gi).constructor===RegExp);//true7 console.log((/a{3}/gi).constructor===Object);//false
阅读全文
0 0
- 转载!javascript3种检测变量类型的方法
- JavaScrit的变量:如何检测变量类型
- 类型和方法的检测
- php 检测类型的方法
- JavaScript3
- javascript3
- javascript3
- javascript3
- JavaScript3
- 检测变量类型
- JavaScript变量类型检测
- VS2005 检测内存泄漏的方法(转载)
- 四种不同的NAT类型及检测方法
- 四种不同的NAT类型及检测方法
- 四种不同的NAT类型及检测方法
- 四种不同的NAT类型及检测方法
- 四种不同的NAT类型及检测方法
- 四种不同的NAT类型及检测方法
- Android 优化简要总结
- Python-多线程
- 将Office(如:Word、Excel、PPT 等)文件转PDF(通过OpenOffice实现)
- js浮点数运算保留两位小数点
- 浅谈对于前端库的理解
- 转载!javascript3种检测变量类型的方法
- 图片质量压缩,尺寸不变,不需要用到磁盘
- Hdu 2896 病毒侵袭 AC自动机
- Centos7中安装Redis3.2.3集群
- Windows下Redis的安装使用
- hadoop伪分布式安装
- Android QQ小红点的实现(附完整注释)
- Azure Ubuntu 16.04 LTS 远程桌面
- cookie值中包含等号、空格、分号等特殊字符的处理