JavaScript数据类型检测代码分享


Posted in Javascript onJanuary 26, 2015
/**

  * param:o表示检测的值

  * return:返回字符串"undefined"、"number"、"boolean"、"string"、"function"、"regexp"、"array"、"date"、"error"、"object"或"null"

  */

function typeOf(o){

    var _toString = Object.prototype.toString;  //获取对象的toString()方法引用

    //列举基本数据类型和内置对象类型,你还可以进一步补充该数组的检测数据类型范围

    var _type ={

        "undefined" : "undefined",

        "number" : "number",

        "boolean" : "boolean",

        "string" : "string",

        "[object Function]" : "function",

        "[object RegExp]" : "regexp",

        "[object Array]" : "array",

        "[object Date]" : "date",

        "[object Error]" : "error"

    }

    return _type[typeof o] || _type[_toString.call(o)] || (o ? "object" : "null"); //通过把值转换为字符串,然后匹配返回字符串中是否包含特定字符进行检测

}

//应用示例:

var a = Math.abs;

alert(typeOf(a));  //返回字符串"function"

代码很简单,说明都在注释里,这里就不多废话了,有相同需求的小伙伴自己来参考下吧

Javascript 相关文章推荐
javascript两段代码,两个小技巧
Feb 04 Javascript
javascript的回调函数应用示例
Feb 20 Javascript
jQuery中remove()方法用法实例
Dec 25 Javascript
JavaScript学习笔记之定时器
Jan 22 Javascript
全面解析Bootstrap表单使用方法(表单样式)
Nov 24 Javascript
Highcharts使用简例及异步动态读取数据
Dec 30 Javascript
javascript的列表切换【实现代码】
May 03 Javascript
jQuery+Ajax+PHP弹出层异步登录效果(附源码下载)
May 27 Javascript
js获取对象、数组的实际长度,元素实际个数的实现代码
Jun 08 Javascript
vue.js入门教程之基础语法小结
Sep 01 Javascript
node.js使用yargs处理命令行参数操作示例
Feb 11 Javascript
jQuery实现增删改查
Dec 22 jQuery
浅谈Javascript中的Function与Object
Jan 26 #Javascript
javascript实现动态加载CSS
Jan 26 #Javascript
使用jQuery实现返回顶部
Jan 26 #Javascript
SyntaxHighlighter 3.0.83使用笔记
Jan 26 #Javascript
AngularJS iframe跨域打开内容时报错误的解决办法
Jan 26 #Javascript
JavaScript事件委托用法分析
Jan 24 #Javascript
jQuery统计上传文件大小的方法
Jan 24 #Javascript
You might like
让你的网站首页自动选择语言转跳
2006/12/06 PHP
php metaphone()函数及php localeconv() 函数实例解析
2016/05/15 PHP
Thinkphp3.2实用篇之计算型验证码示例
2017/02/09 PHP
thinkPHP5.0框架配置格式、加载解析与读取方法
2017/03/17 PHP
php微信公众号开发之二级菜单
2018/10/20 PHP
驱动事件的addEvent.js代码
2007/03/27 Javascript
javascript下利用arguments实现string.format函数
2010/08/24 Javascript
Node.js的Web模板引擎ejs的入门使用教程
2016/06/06 Javascript
js正则表达式验证表单【完整版】
2017/03/06 Javascript
详解webpack 入门总结和实践(按需异步加载,css单独打包,生成多个入口文件)
2017/06/20 Javascript
JavaScript之map reduce_动力节点Java学院整理
2017/06/29 Javascript
JS匿名函数和匿名自执行函数概念与用法分析
2018/03/16 Javascript
微信小程序实现人脸识别
2018/05/25 Javascript
详解vue-router导航守卫
2019/01/19 Javascript
nodejs中request库使用HTTPS代理的方法
2019/04/30 NodeJs
vue.js中ref和$refs的使用及示例讲解
2019/08/14 Javascript
微信小程序授权登陆及每次检查是否授权实例代码
2019/09/18 Javascript
Vue中使用better-scroll实现轮播图组件
2020/03/07 Javascript
jQuery实现飞机大战小游戏
2020/07/05 jQuery
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
详解Python中的文本处理
2015/04/11 Python
浅析python协程相关概念
2018/01/20 Python
Python 2/3下处理cjk编码的zip文件的方法
2019/04/26 Python
Python3 合并二叉树的实现
2019/09/30 Python
Python实现删除某列中含有空值的行的示例代码
2020/07/20 Python
Python filter过滤器原理及实例应用
2020/08/18 Python
selenium判断元素是否存在的两种方法小结
2020/12/07 Python
python基于openpyxl生成excel文件
2020/12/23 Python
餐饮采购员岗位职责
2014/03/15 职场文书
交通志愿者活动总结
2014/06/27 职场文书
倡议书的格式写法
2015/04/28 职场文书
2015年驾驶员工作总结
2015/04/29 职场文书
工作调动申请报告
2015/05/18 职场文书
JavaScript实现贪吃蛇游戏
2021/06/16 Javascript
Python并发编程实例教程之线程的玩法
2021/06/20 Python
JavaScript严格模式不支持八进制的问题讲解
2021/11/07 Javascript