javascript中检测变量的类型的代码


Posted in Javascript onDecember 28, 2010

常用检查变量类型的方法有两种,下面是解说:
检查变量类型方法一:typeof
格式:typeof 变量
用法:if( typeof 变量 == "类型标识") { ... }
下面是一些常用数据类型对应的typeof值:
{an:"object"}

:

object
["an","array"]

:

object
function() {}

:

function
"a string"

:

string
55

 :

number
true

:

boolean
new User()

:

object

从上表中,可以看出用typeof取得变量类型时,对于数组、对象、自定义类的对象同视为object,其它类型检查正常。所以它无法判断出对象是object,还是array,还是User。那么,此时我们可用第二种方法处理。

检查变量类型方法二:构造函数法(constructor)
格式:变量.constructor
用法:if(变量.constructor == "类型标识符") { ... }
{an:"object"}

:

Object
["an","array"]

:

Array
function() {}

:

Function
"a string"

:

String
55

 :

Number
true

:

Boolean
new User()

:

User

从上表中可以看出,我们能正确获取到每种数据的类型。所以,尽量使用变量的构造函数来获取变量类型更好。
不过,有时候这样也更方便:
if(typeof 变量 == "undefined") { ... }

Javascript 相关文章推荐
jQuery帮助之CSS尺寸(五)outerHeight、outerWidth
Nov 14 Javascript
IE浏览器打印的页眉页脚设置解决方法
Dec 08 Javascript
JavaScript 类的定义和引用 JavaScript高级培训 自定义对象
Apr 27 Javascript
jQuery插件jQuery-JSONP开发ajax调用使用注意事项
Nov 22 Javascript
js创建对象的区别示例介绍
Jul 24 Javascript
jQuery实现的一个自定义Placeholder属性插件
Aug 11 Javascript
javascript巧用eval函数组装表单输入项为json对象的方法
Nov 25 Javascript
JavaScript接口的实现三种方式(推荐)
Jun 14 Javascript
关于vue-resource报错450的解决方案
Jul 24 Javascript
Three.js中网格对象MESH的属性与方法详解
Sep 27 Javascript
countUp.js实现数字滚动效果
Oct 18 Javascript
原生js实现轮播图特效
May 04 Javascript
javascript中的作用域scope介绍
Dec 28 #Javascript
原生Js实现按的数据源均分时间点幻灯片效果(已封装)
Dec 28 #Javascript
按给定几率进行随机抽取的js代码
Dec 28 #Javascript
围观tangram js库
Dec 28 #Javascript
让你的博文自动带上缩址的实现代码,方便发到微博客上
Dec 28 #Javascript
JS弹出对话框返回值代码(asp.net后台)
Dec 28 #Javascript
jQuery Tips 为AJAX回调函数传递额外参数的方法
Dec 28 #Javascript
You might like
php魔术方法与魔术变量、内置方法与内置变量的深入分析
2013/06/03 PHP
php计算数组不为空元素个数的方法
2014/01/27 PHP
thinkphp学习笔记之多表查询
2014/07/28 PHP
php简单实现MVC
2015/02/05 PHP
PHP获取二维数组中某一列的值集合
2015/12/25 PHP
Javascript 获取链接(url)参数的方法[正则与截取字符串]
2010/02/09 Javascript
jquery动画2.元素坐标动画效果(创建一个图片走廊)
2012/08/24 Javascript
JQuery.Ajax之错误调试帮助信息介绍
2013/07/04 Javascript
vuejs手把手教你写一个完整的购物车实例代码
2017/07/06 Javascript
JS轮播图实现简单代码
2021/02/19 Javascript
图片文字识别(OCR)插件Ocrad.js教程
2018/11/26 Javascript
微信公众号平台接口开发 菜单管理的实现
2019/08/14 Javascript
JavaScript的查询机制LHS和RHS解析
2019/08/16 Javascript
[03:14]辉夜杯主赛事 12月25日每日之星
2015/12/26 DOTA
新手该如何学python怎么学好python?
2008/10/07 Python
Python实现基于HTTP文件传输实例
2014/11/08 Python
asyncio 的 coroutine对象 与 Future对象使用指南
2016/09/11 Python
python机器学习实战之最近邻kNN分类器
2017/12/20 Python
浅谈flask中的before_request与after_request
2018/01/20 Python
python飞机大战pygame碰撞检测实现方法分析
2019/12/17 Python
python3 Scrapy爬虫框架ip代理配置的方法
2020/01/17 Python
使用Python制作新型冠状病毒实时疫情图
2020/01/28 Python
tensorflow 限制显存大小的实现
2020/02/03 Python
Python如何使用正则表达式爬取京东商品信息
2020/06/01 Python
python3.7添加dlib模块的方法
2020/07/01 Python
用CSS3和table标签实现一个圆形轨迹的动画的示例代码
2019/01/17 HTML / CSS
澳大利亚运动鞋零售商:The Athlete’s Foot
2018/11/04 全球购物
在什么时候需要使用"常引用"
2015/12/31 面试题
一道SQL存储过程面试题
2016/10/07 面试题
应届毕业生的自我鉴定
2013/11/13 职场文书
总经理司机岗位职责
2014/02/06 职场文书
大学生学习2014全国两会心得体会
2014/03/13 职场文书
公共艺术专业自荐信
2014/09/01 职场文书
2014小学生国庆65周年演讲稿
2014/09/21 职场文书
邀请函格式范文
2015/02/02 职场文书
银行求职信模板
2015/03/20 职场文书