JS精确判断数据类型代码实例


Posted in Javascript onDecember 18, 2019

这篇文章主要介绍了JS精确判断数据类型代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

普通的判断方式有各种不足,typeof就不说了,判断模糊

constructor这种判断方式是可以,但是也有不足,如果aaa为null或者undefined的时候,代码就会报错

var aaa = {}
aaa.constructor === Object //true

下面介绍一种完美的判方式:利用Object.prototype.toString.call()判断

var toString = Object.prototype.toString;
 
 function isArray(val) {
  return toString.call(val) === '[object Array]'; 
 }
 
 function isObject(val) {
  return toString.call(val) === '[object Object]';
 }
 
 function isNull(val) {
  return toString.call(val) === '[object Null]'; 
 }
 
 function isUndefined(val) {
  return toString.call(val) === '[object Undefined]';
 }

如此,即能判断准确,又不会报错,是不是很完美,欢迎评论留言

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用js实现trim()的解决办法
Apr 16 Javascript
jQuery实现鼠标经过图片预览大图效果
Apr 10 Javascript
浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法
May 11 Javascript
浅谈jQuery事件绑定原理
Jan 02 Javascript
jQuery中contents()方法用法实例
Jan 08 Javascript
Jquery搜索父元素操作方法
Feb 10 Javascript
纯js代码制作的网页时钟特效【附实例】
Mar 30 Javascript
javascript 通过键名获取键盘的keyCode方法
Dec 31 Javascript
vue里面父组件修改子组件样式的方法
Feb 03 Javascript
vue.js 添加 fastclick的支持方法
Aug 28 Javascript
Vue-router的使用和出现空白页,路由对象属性详解
Sep 03 Javascript
JavaScript实现预览本地上传图片功能完整示例
Mar 08 Javascript
使用webpack/gulp构建TypeScript项目的方法示例
Dec 18 #Javascript
小程序简单两栏瀑布流效果的实现
Dec 18 #Javascript
js数据类型转换与流程控制操作实例分析
Dec 18 #Javascript
vue不操作dom实现图片轮播的示例代码
Dec 18 #Javascript
使用JS来动态操作css的几种方法
Dec 18 #Javascript
基于ts的动态接口数据配置的详解
Dec 18 #Javascript
H5实现手机拍照和选择上传功能
Dec 18 #Javascript
You might like
php strcmp使用说明
2010/04/22 PHP
phpadmin如何导入导出大数据文件及php.ini参数修改
2013/02/18 PHP
php实现扫描二维码根据浏览器类型访问不同下载地址
2014/10/15 PHP
PHP简单选择排序算法实例
2015/01/26 PHP
对比PHP对MySQL的缓冲查询和无缓冲查询
2016/07/01 PHP
PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
2019/09/09 PHP
laravel 实现根据字段不同值做不同查询
2019/10/23 PHP
js 窗口抖动示例
2013/09/04 Javascript
javascript中数组的多种定义方法和常用函数简介
2014/05/09 Javascript
JavaScript基础知识学习笔记
2014/12/02 Javascript
ES6新特性四:变量的解构赋值实例
2017/04/21 Javascript
微信小程序中post方法与get方法的封装
2017/09/26 Javascript
vue基于better-scroll实现左右联动滑动页面
2020/06/30 Javascript
python图像处理之反色实现方法
2015/05/30 Python
Python 实现简单的shell sed替换功能(实例讲解)
2017/09/29 Python
python实现人脸识别经典算法(一) 特征脸法
2018/03/13 Python
浅谈pandas用groupby后对层级索引levels的处理方法
2018/11/06 Python
Python3 关于pycharm自动导入包快捷设置的方法
2019/01/16 Python
windows上安装python3教程以及环境变量配置详解
2019/07/18 Python
python实现查找所有程序的安装信息
2020/02/18 Python
python脚本和网页有何区别
2020/07/02 Python
django序列化时使用外键的真实值操作
2020/07/15 Python
Cpython解释器中的GIL全局解释器锁
2020/11/09 Python
使用canvas绘制贝塞尔曲线
2014/12/17 HTML / CSS
家庭户外服装:Hawkshead
2017/11/02 全球购物
德国购买门票网站:ADticket.de
2019/10/31 全球购物
体育教育毕业生自荐信
2013/11/21 职场文书
党员公开承诺书范文
2014/03/25 职场文书
社会稳定风险评估方案
2014/06/02 职场文书
总经理人事任命书
2014/06/05 职场文书
厕所文明标语
2014/06/11 职场文书
给老婆的检讨书
2015/01/27 职场文书
研究生导师推荐信
2015/03/25 职场文书
签订劳动合同通知书
2015/04/16 职场文书
2015年党支部书记工作总结
2015/05/21 职场文书
CSS几步实现赛博朋克2077风格视觉效果
2021/06/16 HTML / CSS