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 相关文章推荐
javascript replace方法与正则表达式
Feb 19 Javascript
javascript Array.remove() 数组删除
Aug 06 Javascript
用JavaScript计算在UTF-8下存储字符串占用字节数
Aug 08 Javascript
详解JavaScript中的forEach()方法的使用
Jun 08 Javascript
javascript实现给定半径求出圆的面积
Jun 26 Javascript
javascript巧用eval函数组装表单输入项为json对象的方法
Nov 25 Javascript
DOM中事件处理概览与原理的全面解析
Aug 16 Javascript
Bootstrap基本布局实现方法详解
Nov 25 Javascript
vue中子组件调用兄弟组件方法
Jul 06 Javascript
详解javascript函数写法大全
Mar 25 Javascript
详解element-ui日期时间选择器的日期格式化问题
Apr 08 Javascript
使用element-ui的el-menu导航选中后刷新页面保持当前选中状态
Jul 19 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.ini 中文版
2006/10/28 PHP
php图片上传类 附调用方法
2016/05/15 PHP
PHP 实现手机端APP支付宝支付功能
2018/06/07 PHP
关于使用 jBox 对话框的提交不能弹出问题解决方法
2012/11/07 Javascript
js点击button按钮跳转到另一个新页面
2014/10/10 Javascript
web前端设计师们常用的jQuery特效插件汇总
2014/12/07 Javascript
node.js中的querystring.unescape方法使用说明
2014/12/10 Javascript
jQuery自定义图片缩放拖拽插件imageQ实现方法(附demo源码下载)
2016/05/27 Javascript
JavaScript实现使用Canvas绘制图形的基本教程
2016/10/27 Javascript
JS简单实现数组去重的方法示例
2017/03/27 Javascript
node.js 核心http模块,起一个服务器,返回一个页面的实例
2017/09/11 Javascript
requireJS模块化实现返回顶部功能的方法详解
2017/10/16 Javascript
JS 数组随机洗牌的实例代码
2018/09/12 Javascript
详解用Webpack与Babel配置ES6开发环境
2019/03/12 Javascript
简单学习5种处理Vue.js异常的方法
2019/06/17 Javascript
jquery插件开发模式实例详解
2019/07/20 jQuery
js中位数不足自动补位扩展padLeft、padRight实现代码
2020/04/06 Javascript
重命名批处理python脚本
2013/04/05 Python
python复制文件代码实现
2013/12/23 Python
Python基础入门之seed()方法的使用
2015/05/15 Python
常见的python正则用法实例讲解
2016/06/21 Python
python编程线性回归代码示例
2017/12/07 Python
用Python实现KNN分类算法
2017/12/22 Python
idea创建springMVC框架和配置小文件的教程图解
2018/09/18 Python
django-初始配置(纯手写)详解
2019/07/30 Python
keras-siamese用自己的数据集实现详解
2020/06/10 Python
django 装饰器 检测登录状态操作
2020/07/02 Python
用CSS3和table标签实现一个圆形轨迹的动画的示例代码
2019/01/17 HTML / CSS
HTML5 Canvas中绘制椭圆的4种方法
2015/04/24 HTML / CSS
全球独特生活方式产品和礼品购物网站:AHAlife
2018/09/18 全球购物
项目管理计划书
2014/01/09 职场文书
法人授权委托书
2014/04/03 职场文书
庆元旦活动总结
2014/07/09 职场文书
2014年市场部工作总结
2014/11/25 职场文书
2014年幼儿园班级工作总结
2014/12/17 职场文书
Python 线程池模块之多线程操作代码
2021/05/20 Python