js 判断各种数据类型的简单方法(推荐)


Posted in Javascript onAugust 29, 2016

了解js的都知道, 有个typeof  用来判断各种数据类型,有两种写法:typeof   xxx   ,typeof(xxx)

 如下实例:

typeof   2      输出   number

typeof   null   输出   object

typeof   {}    输出   object

typeof    []    输出   object

typeof   (function(){})   输出  function

typeof    undefined  输出  undefined

typeof   '222'   输出    string

typeof  true     输出     boolean

这里面包含了js里面的五种数据类型  number   string    boolean   undefinedobject和函数类型 function

看到这里你肯定会问了:我怎么去区分对象,数组和null呢?

接下来我们就用到另外一个利器:Object.prototype.toString.call

这是对象的一个原生原型扩展函数,用来更精确的区分数据类型。

我们来试试这个玩儿意儿:

var   gettype=Object.prototype.toString

gettype.call('aaaa')输出      [object String]

gettype.call(2222) 输出      [object Number]

gettype.call(true)  输出      [object Boolean]

gettype.call(undefined)  输出      [object Undefined]

gettype.call(null)  输出   [object Null]

gettype.call({})   输出   [object Object]

gettype.call([])    输出   [object Array]

gettype.call(function(){})     输出   [object Function]

看到这里,刚才的问题我们解决了。

其实js 里面还有好多类型判断 

[object HTMLDivElement]   div 对象 ,   
[object HTMLBodyElement]  body 对象,
[object Document](IE)或者 
[object HTMLDocument](firefox,google) ......

各种dom节点的判断,这些东西在我们写插件的时候都会用到。

可以封装的方法如下:

var  gettype=Object.prototype.toString

var  utility={

isObj:function(o){

    return  gettype.call(o)=="[object Object]";

 },

     isArray:function(o){

        return  gettype.call(o)=="[object Array]";

     },

     isNULL:function(o){

        return  gettype.call(o)=="[object Null]";

     },

     isDocument:function(){

        return  gettype.call(o)=="[object Document]"|| [object HTMLDocument];

     }

     ........

}

以上这篇js 判断各种数据类型的简单方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js之WEB开发调试利器:Firebug 下载
Jan 13 Javascript
可实现多表单提交的javascript函数
Aug 01 Javascript
javascript 表单验证常见正则
Sep 28 Javascript
一个挺有意思的Javascript小问题说明
Sep 26 Javascript
利用JQuery制作符合Web标准的QQ弹出消息
Jan 14 Javascript
Jquery实现自定义tooltip示例代码
Feb 12 Javascript
原生javascript实现Tab选项卡切换功能
Jan 12 Javascript
JS正则替换掉小括号及内容的方法
Nov 29 Javascript
基于Angular.js实现的触摸滑动动画实例代码
Feb 19 Javascript
详解angular分页插件tm.pagination二次触发问题解决方案
Jul 20 Javascript
vue项目设置scrollTop不起作用(总结)
Dec 21 Javascript
微信小程序入口场景的问题集合与相关解决方法
Jun 26 Javascript
Web打印解决方案之证件套打的实现思路
Aug 29 #Javascript
浅谈js数据类型判断与数组判断
Aug 29 #Javascript
判断js的Array和Object的实现方法
Aug 29 #Javascript
基于MVC+EasyUI的web开发框架之使用云打印控件C-Lodop打印页面或套打报关运单信息
Aug 29 #Javascript
jquery根据一个值来选中select下的option实例代码
Aug 29 #Javascript
JQuery动态添加Select的Option元素实现方法
Aug 29 #Javascript
javascript如何创建对象
Aug 29 #Javascript
You might like
php学习 字符串课件
2008/06/15 PHP
async和DOM Script文件加载比较
2014/07/20 PHP
php之curl实现http与https请求的方法
2014/10/21 PHP
Yii把CGridView文本框换成下拉框的方法
2014/12/03 PHP
php采集内容中带有图片地址的远程图片并保存的方法
2015/01/03 PHP
Laravel中扩展Memcached缓存驱动实现使用阿里云OCS缓存
2015/02/10 PHP
php随机生成数字字母组合的方法
2015/03/18 PHP
extjs3 combobox取value和text案例详解
2013/02/06 Javascript
深入理解javascript的执行顺序
2014/04/04 Javascript
实用框架(iframe)操作代码
2014/10/23 Javascript
js查找节点的方法小结
2015/01/13 Javascript
Javascript中的几种URL编码方法比较
2015/01/23 Javascript
jquery自定义插件——window的实现【示例代码】
2016/05/06 Javascript
jquery 动态增加删除行的简单实例(推荐)
2016/10/12 Javascript
Ajax高级笔记 JavaScript高级程序设计笔记
2017/06/22 Javascript
微信小程序动态添加和删除组件的现实
2020/02/28 Javascript
ssm+vue前后端分离框架整合实现(附源码)
2020/07/08 Javascript
[01:03:41]完美世界DOTA2联赛PWL S3 DLG vs Phoenix 第一场 12.17
2020/12/19 DOTA
python备份文件的脚本
2008/08/11 Python
python中 chr unichr ord函数的实例详解
2017/08/06 Python
详解python eval函数的妙用
2017/11/16 Python
详解TensorFlow查看ckpt中变量的几种方法
2018/06/19 Python
Python定时任务sched模块用法示例
2018/07/16 Python
Centos下实现安装Python3.6和Python2共存
2018/08/15 Python
python重要函数eval多种用法解析
2020/01/14 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
2020/03/23 Python
Python urlencode和unquote函数使用实例解析
2020/03/31 Python
keras分类之二分类实例(Cat and dog)
2020/07/09 Python
聊聊python在linux下与windows下导入模块的区别说明
2021/03/03 Python
linux面试题参考答案(11)
2016/11/26 面试题
2013年办公室秘书的个人自我鉴定
2013/10/24 职场文书
2014年幼儿园小班工作总结
2014/12/04 职场文书
转正申请报告格式
2015/05/15 职场文书
聘用合同范本
2015/09/21 职场文书
深入讲解Vue中父子组件通信与事件触发
2022/03/22 Vue.js
win11无线投屏在哪设置? win11无线投屏功能的使用方法
2022/04/08 数码科技