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 相关文章推荐
基于SVG的web页面图形绘制API介绍及编程演示
Jun 28 Javascript
Javascript控制页面链接在新窗口打开具体方法
Aug 16 Javascript
小米公司JavaScript面试题
Dec 29 Javascript
javascript使用avalon绑定实现checkbox全选
May 06 Javascript
js的三种继承方式详解
Jan 21 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
Nov 10 Javascript
详解如何用typescript开发koa2的二三事
Nov 13 Javascript
详解promise.then,process.nextTick, setTimeout 以及 setImmediate的执行顺序
Nov 21 Javascript
Electron autoUpdater实现Windows安装包自动更新的方法
Dec 24 Javascript
命令行批量截图Node脚本示例代码
Jan 25 Javascript
react结合bootstrap实现评论功能
May 30 Javascript
使用vue-element-admin框架从后端动态获取菜单功能的实现
Apr 29 Vue.js
使用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
现磨咖啡骗局!现磨咖啡=新鲜咖啡?现磨咖啡背后的猫腻你不懂!
2019/03/28 冲泡冲煮
php获取系统变量方法小结
2015/05/29 PHP
Ajax中的JSON格式与php传输过程全面解析
2017/11/14 PHP
PHP-FPM和Nginx的通信机制详解
2019/02/01 PHP
JQuery 学习笔记 选择器之六
2009/07/23 Javascript
javascript Array.remove() 数组删除
2009/08/06 Javascript
jQuery学习总结之元素的相对定位和选择器(持续更新)
2011/04/26 Javascript
中文字符串截取的js函数代码
2013/04/17 Javascript
JS实现可改变列宽的table实例
2013/07/02 Javascript
Javascript弹出窗口的各种方法总结
2013/11/11 Javascript
JS实现页面载入时随机显示图片效果
2016/09/07 Javascript
微信小程序使用第三方库Underscore.js步骤详解
2016/09/27 Javascript
vue.js 使用v-if v-else发现没有执行解决办法
2017/05/15 Javascript
jquery中有哪些api jQuery主要API
2017/11/20 jQuery
vue页面切换过渡transition效果
2018/10/08 Javascript
Vue项目路由刷新的实现代码
2019/04/17 Javascript
JavaScript实现烟花绽放动画效果
2020/08/04 Javascript
[01:45]DOTA2新英雄“神谕者”全方位展示
2014/11/21 DOTA
学习python处理python编码问题
2011/03/13 Python
Saltstack快速入门简单汇总
2016/03/01 Python
python并发编程之多进程、多线程、异步和协程详解
2016/10/28 Python
python3.5实现socket通讯示例(TCP)
2017/02/07 Python
机器学习10大经典算法详解
2017/12/07 Python
详解Python3的TFTP文件传输
2018/06/26 Python
python多线程同步实例教程
2019/08/11 Python
利用PyQt中的QThread类实现多线程
2020/02/18 Python
全面总结使用CSS实现水平垂直居中效果的方法
2016/03/10 HTML / CSS
香港草莓网土耳其网站:Strawberrynet TR
2017/03/02 全球购物
护理专业毕业生自我鉴定总结
2014/03/24 职场文书
三年级学生评语
2014/04/23 职场文书
横幅标语大全
2014/06/17 职场文书
公司门卫岗位职责范本
2014/07/08 职场文书
刑事上诉状(无罪)
2015/05/23 职场文书
跳高加油稿
2015/07/21 职场文书
导游词之天津盘山
2019/11/01 职场文书
KVM基础命令详解
2022/04/30 Servers