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 相关文章推荐
CCPry JS类库 代码
Oct 30 Javascript
JQuery Highcharts 动态生成图表的方法
Nov 15 Javascript
Javascript学习笔记之 函数篇(二) : this 的工作机制
Jun 24 Javascript
项目中常用的JS方法整理
Jan 30 Javascript
理解Javascript的call、apply
Dec 16 Javascript
vue2 如何实现div contenteditable=“true”(类似于v-model)的效果
Feb 08 Javascript
Vue form 表单提交+ajax异步请求+分页效果
Apr 22 Javascript
详解用node编写自己的cli工具
May 23 Javascript
关于redux-saga中take使用方法详解
Feb 27 Javascript
vue-router动态设置页面title的实例讲解
Aug 30 Javascript
JavaScript中判断为整数的多种方式及保留两位小数的方法
Sep 09 Javascript
JS性能优化实现方法及优点进行
Aug 30 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
Zend的Registry机制的使用说明
2013/05/02 PHP
js限制checkbox勾选的个数以及php获取多个checkbbox的方法深入解析
2013/07/18 PHP
部署PHP项目应该注意的几点事项分享
2013/12/20 PHP
php使用反射插入对象示例分享
2014/03/11 PHP
php检索或者复制远程文件的方法
2015/03/13 PHP
jquery插件之easing使用
2010/08/19 Javascript
js下用eval生成JSON对象
2010/09/17 Javascript
jQuery 源码分析笔记(2) 变量列表
2011/05/28 Javascript
仿谷歌主页js动画效果实现代码
2013/07/14 Javascript
javascript实现简单的页面右下角提示信息框
2015/07/31 Javascript
jQuery点击导航栏选中更换样式的实现代码
2017/01/23 Javascript
利用Jasmine对Angular进行单元测试的方法详解
2017/06/12 Javascript
vue表单绑定实现多选框和下拉列表的实例
2017/08/12 Javascript
详解在React中跨组件分发状态的三种方法
2018/08/09 Javascript
Bootstrap-table自定义可编辑每页显示记录数
2018/09/07 Javascript
在Vue项目中使用snapshot测试的具体使用
2019/04/16 Javascript
简单实现节流函数和防抖函数过程解析
2019/10/08 Javascript
vue实现拖拽效果
2019/12/23 Javascript
react中hook介绍以及使用教程
2020/12/11 Javascript
python登陆asp网站页面的实现代码
2015/01/14 Python
Python写的一个简单监控系统
2015/06/19 Python
python删除服务器文件代码示例
2018/02/09 Python
Pandas之Fillna填充缺失数据的方法
2019/06/25 Python
python opencv实现证件照换底功能
2019/08/19 Python
Pytorch环境搭建与基本语法
2020/06/03 Python
用canvas做一个DVD待机动画的实现代码
2019/04/12 HTML / CSS
Bogner美国官网:滑雪服中的”Dior”
2018/01/30 全球购物
雪山饭庄的创业计划书范文
2014/01/18 职场文书
学校宣传标语
2014/06/18 职场文书
社区义诊通知
2015/04/24 职场文书
大学生团日活动总结
2015/05/06 职场文书
2015秋季开学典礼新闻稿
2015/07/17 职场文书
2015年思想品德教学工作总结
2015/07/22 职场文书
2016年社区六一儿童节活动总结
2016/04/06 职场文书
2019最新婚庆对联集锦!
2019/07/10 职场文书
Pycharm连接远程服务器并远程调试的全过程
2021/06/24 Python