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 相关文章推荐
Mootools 1.2教程 定时器和哈希简介
Sep 15 Javascript
Jquery的hover方法让鼠标经过li时背景变色
Sep 06 Javascript
JavaScript代码简单实现求杨辉三角给定行的最大值
Oct 29 Javascript
使用Jquery获取带特殊符号的ID 标签的方法
Apr 30 Javascript
Three.js学习之正交投影照相机
Aug 01 Javascript
jQuery表单对象属性过滤选择器实例详解
Sep 13 Javascript
详解vue-cli与webpack结合如何处理静态资源
Sep 19 Javascript
JavaScript中 ES6变量的结构赋值
Jul 10 Javascript
浅析Vue.js中v-bind v-model的使用和区别
Dec 04 Javascript
JS中的模糊查询功能
Dec 08 Javascript
vue项目在webpack2实现移动端字体自适配功能
Jun 02 Javascript
详解Typescript里的This的使用方法
Jan 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
Ext.data.PagingMemoryProxy分页一次性读取数据的实现代码
2010/04/07 PHP
约瑟夫环问题的PHP实现 使用PHP数组内部指针操作函数
2010/10/12 PHP
PHP导出EXCEL快速开发指南--PHPEXCEL的使用详解
2013/06/03 PHP
phpcms配置列表页以及获得文章发布时间
2017/07/04 PHP
网页javascript精华代码集
2007/01/24 Javascript
jQuery学习笔记之Helloworld
2010/12/22 Javascript
遨游,飞飞,IE,空中网 浏览器无提示关闭方法
2011/07/11 Javascript
javascript实现跳转菜单的具体方法
2013/07/05 Javascript
JS实现带圆弧背景渐变效果的导航菜单代码
2015/10/13 Javascript
javascript轮播图算法
2016/10/21 Javascript
JS中用三种方式实现导航菜单中的二级下拉菜单
2016/10/31 Javascript
Javascrip实现文字跳动特效
2016/11/27 Javascript
浅谈Nodejs中的作用域问题
2016/12/26 NodeJs
js return返回多个值,通过对象的属性访问方法
2017/02/21 Javascript
在Vue.js中使用Mixins的方法
2017/09/12 Javascript
Vue.js 利用v-for中的index值实现隔行变色
2018/08/01 Javascript
微信小程序实现工作时间段选择
2019/02/15 Javascript
vue 全局环境切换问题
2019/10/27 Javascript
解决VueCil代理本地proxytable无效报错404的问题
2020/11/07 Javascript
[06:04]DOTA2国际邀请赛纪录片:Just For LGD
2013/08/11 DOTA
python3获取当前文件的上一级目录实例
2018/04/26 Python
使用pandas对两个dataframe进行join的实例
2018/06/08 Python
Python网页解析器使用实例详解
2020/05/30 Python
python 中关于pycharm选择运行环境的问题
2020/10/31 Python
诗普兰迪官方网站:Splendid
2018/09/18 全球购物
STP的判定过程
2012/10/01 面试题
品管员岗位职责
2013/11/10 职场文书
精彩的大学生自我评价
2013/11/17 职场文书
社团活动总结报告
2014/06/27 职场文书
幼儿园法制宣传日活动总结
2014/11/01 职场文书
学校捐款活动总结
2015/05/09 职场文书
计划生育责任书
2015/05/09 职场文书
TensorFlow的自动求导原理分析
2021/05/26 Python
启动Tomcat时出现大量乱码的解决方法
2021/06/21 Java/Android
Apache Hudi数据布局黑科技降低一半查询时间
2022/03/31 Servers