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 Mobile的loading对话框显示/隐藏方法分享
Nov 26 Javascript
提升PHP安全:8个必须修改的PHP默认配置
Nov 17 Javascript
JS实现带鼠标效果的头像及文章列表代码
Sep 27 Javascript
AngularJS实现全选反选功能
Dec 08 Javascript
javascript实现禁止复制网页内容汇总
Dec 30 Javascript
Bootstrap每天必学之工具提示(Tooltip)插件
Apr 26 Javascript
vue2.0中click点击当前li实现动态切换class
Jun 21 Javascript
Vue表单绑定的实例代码(单选按钮,选择框(单选时,多选时,用 v-for 渲染的动态选项)
May 13 Javascript
vue配置nprogress实现页面顶部进度条
Sep 21 Javascript
在vue中使用防抖和节流,防止重复点击或重复上拉加载实例
Nov 13 Javascript
Vue的props父传子的示例代码
May 20 Javascript
浅谈在vue-cli3项目中解决动态引入图片img404的问题
Aug 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实现统计所有字符在字符串中出现次数的方法
2017/10/17 PHP
jquery 得到当前页面高度和宽度的两个函数
2010/02/21 Javascript
iframe 异步加载技术及性能分析
2011/07/19 Javascript
jquery 按钮状态效果 正常、移上、按下
2013/08/12 Javascript
javascript 3d 逐侦产品展示(核心精简)
2014/03/26 Javascript
iframe的onreadystatechange事件在firefox下的使用
2014/04/16 Javascript
jquery实现页面常用的返回顶部效果
2016/03/04 Javascript
原生态js,鼠标按下后,经过了那些单元格的简单实例
2016/08/11 Javascript
Vue.js第三天学习笔记(计算属性computed)
2016/12/01 Javascript
微信小程序  checkbox组件详解及简单实例
2017/01/10 Javascript
javascript使用链接跨域下载图片
2019/11/01 Javascript
python 七种邮件内容发送方法实例
2014/04/22 Python
在Python的while循环中使用else以及循环嵌套的用法
2015/10/14 Python
pandas.DataFrame选取/排除特定行的方法
2018/07/03 Python
Flask web开发处理POST请求实现(登录案例)
2018/07/26 Python
python 循环读取txt文档 并转换成csv的方法
2018/10/26 Python
解决pyinstaller打包pyqt5的问题
2019/01/08 Python
Pandas0.25来了千万别错过这10大好用的新功能
2019/08/07 Python
在 Python 中使用 7zip 备份文件的操作
2020/12/11 Python
美国床垫连锁店:Mattress Firm
2021/02/13 全球购物
什么造成了Java里面的异常
2016/04/24 面试题
公司年会晚宴演讲稿
2014/01/06 职场文书
酒店副总经理岗位职责范本
2014/02/04 职场文书
园艺师求职信
2014/03/10 职场文书
小学生手册家长评语
2014/04/16 职场文书
行政求职信
2014/07/04 职场文书
公司合作协议范文
2014/10/01 职场文书
教师作风建设剖析材料
2014/10/11 职场文书
新郎新娘答谢词
2015/01/04 职场文书
检讨书怎么写
2015/01/23 职场文书
兼职安全员岗位职责
2015/02/15 职场文书
教师培训简讯
2015/07/20 职场文书
教你快速开启Apache SkyWalking的自监控
2021/04/25 Servers
利用Java设置Word文本框中的文字旋转方向的实现方法
2021/06/28 Java/Android
JavaScript与JQuery框架基础入门教程
2021/07/15 Javascript
解决persistence.xml配置文件修改存放路径的问题
2022/02/24 Java/Android