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 相关文章推荐
JavaScript 仿关机效果的图片层
Dec 26 Javascript
Javascript String.replace的妙用
Sep 08 Javascript
Jquery显示、隐藏元素以及添加删除样式
Aug 09 Javascript
利用js实现前台动态添加文本框,后台获取文本框内容(示例代码)
Nov 25 Javascript
使用jQuery中的when实现多个AJAX请求对应单个回调的例子分享
Apr 23 Javascript
js实现checkbox全选和反选示例
May 01 Javascript
jQuery实现日期联动效果实例
Jul 26 Javascript
jQuery Ajax 实现分页 kkpager插件实例代码
Aug 10 jQuery
微信小程序 input表单与redio及下拉列表的使用实例
Sep 20 Javascript
Node.js中console.log()输出彩色字体的方法示例
Dec 01 Javascript
element日历calendar组件上月、今天、下月、日历块点击事件及模板源码
Jul 27 Javascript
微信小程序自定义支持图片的弹窗
Dec 21 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编程入门的基本语法知识点总结
2016/01/26 PHP
laravel5.0在linux下解决.htaccess无效和去除index.php的问题
2019/10/16 PHP
PHP文件打开关闭及读写操作示例解析
2020/08/06 PHP
将json当数据库一样操作的javascript lib
2013/10/28 Javascript
JS实现侧悬浮浮动实例代码
2013/11/29 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
2014/01/26 Javascript
详解照片瀑布流效果(js,jquery分别实现与知识点总结)
2017/01/01 Javascript
jQuery源码分析之sizzle选择器详解
2017/02/13 Javascript
AngularJS中$http的交互问题
2017/03/29 Javascript
js实现点击按钮复制文本功能
2020/07/20 Javascript
使用weixin-java-tools完成微信授权登录、微信支付的示例
2018/09/26 Javascript
9102了,你还不会移动端真机调试吗
2019/03/25 Javascript
JavaScript封闭函数及常用内置对象示例
2019/05/13 Javascript
关于layui 下拉列表的change事件详解
2019/09/20 Javascript
js实现图片3D轮播效果
2019/09/21 Javascript
vue轮播组件实现$children和$parent 附带好用的gif录制工具
2019/09/26 Javascript
vue使用axios实现excel文件下载的功能
2020/07/16 Javascript
python实现socket端口重定向示例
2014/02/10 Python
用Python实现一个简单的能够发送带附件的邮件程序的教程
2015/04/08 Python
Python中线程编程之threading模块的使用详解
2015/06/23 Python
Python可变参数用法实例分析
2017/04/02 Python
numpy.linspace 生成等差数组的方法
2018/07/02 Python
python 实现视频流下载保存MP4的方法
2019/01/09 Python
python 判断三个数字中的最大值实例代码
2019/07/24 Python
Python requests设置代理的方法步骤
2020/02/23 Python
极简的HTML5模版
2015/07/09 HTML / CSS
H5混合开发app如何升级的方法
2018/01/10 HTML / CSS
阿迪达斯法国官方网站:adidas法国
2018/03/20 全球购物
难忘的一课教学反思
2014/04/30 职场文书
大学生找工作求职信
2014/07/09 职场文书
2014年双拥工作总结
2014/11/21 职场文书
小学班主任经验交流材料
2014/12/16 职场文书
人事行政主管岗位职责
2015/04/09 职场文书
sql中mod()函数取余数的用法
2021/05/29 SQL Server
Ajax实现异步加载数据
2021/11/17 Javascript
python和C/C++混合编程之使用ctypes调用 C/C++的dll
2022/04/29 Python