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 相关文章推荐
JavaScript中的匀速运动和变速(缓冲)运动详细介绍
Nov 11 Javascript
js操作输入框中选择内容兼容IE及其他主流浏览器
Apr 22 Javascript
理解javascript定时器中的setTimeout与setInterval
Feb 23 Javascript
Bootstrap 3 按钮标签实例代码
Feb 21 Javascript
关于Javascript中document.cookie的使用
Mar 08 Javascript
angular 用拦截器统一处理http请求和响应的方法
Jun 08 Javascript
react中的ajax封装实例详解
Oct 17 Javascript
js隐式转换的知识实例讲解
Sep 28 Javascript
微信小程序实现收货地址左滑删除
Nov 18 Javascript
微信小程序点击view动态添加样式过程解析
Jan 21 Javascript
Vue Cli3 打包配置并自动忽略console.log语句的方法
Apr 23 Javascript
Javascript 模拟mvc实现点餐程序案例详解
Dec 24 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
Codeigniter整合Tank Auth权限类库详解
2014/06/12 PHP
php实现使用正则将文本中的网址转换成链接标签
2014/12/03 PHP
新浪微博OAuth认证和储存的主要过程详解
2015/03/27 PHP
php正则替换处理HTML页面的方法
2015/06/17 PHP
Java中final关键字详解
2015/08/10 PHP
PHP防止刷新重复提交页面的示例代码
2015/11/11 PHP
判断、添加和删除WordPress置顶文章的相关PHP函数小结
2015/12/10 PHP
PHP中addslashes()和stripslashes()实现字符串转义和还原用法实例
2016/01/07 PHP
学习PHP session的传递方式
2016/06/15 PHP
PHP简单字符串过滤方法示例
2016/09/04 PHP
thinkphp5实现微信扫码支付
2019/12/23 PHP
javascript判断iphone/android手机横竖屏模式的函数
2011/12/20 Javascript
jquery遍历筛选数组的几种方法和遍历解析json对象
2013/12/13 Javascript
jquery和雅虎的yql服务实现天气预报服务示例
2014/02/08 Javascript
c#程序员对TypeScript的认识过程
2015/06/19 Javascript
JavaScript中Boolean对象的属性解析
2015/10/21 Javascript
JQuery控制图片由中心点逐渐放大效果
2016/06/26 Javascript
bootstrap fileinput 上传插件的基础使用
2017/02/17 Javascript
在Vue.js中使用Mixins的方法
2017/09/12 Javascript
高性能的javascript之加载顺序与执行原理篇
2018/01/14 Javascript
微信小程序系列之自定义顶部导航功能
2019/05/21 Javascript
Vue两个版本的区别和使用方法(更深层次了解)
2020/02/16 Javascript
一个基于flask的web应用诞生 bootstrap框架美化(3)
2017/04/11 Python
python获取指定字符串中重复模式最高的字符串方法
2018/06/29 Python
对pandas的行列名更改与数据选择详解
2018/11/12 Python
Python3爬虫爬取百姓网列表并保存为json功能示例【基于request、lxml和json模块】
2018/12/05 Python
python pygame实现方向键控制小球
2019/05/17 Python
Python创建空列表的字典2种方法详解
2020/02/13 Python
pandas实现excel中的数据透视表和Vlookup函数功能代码
2020/02/14 Python
CSS3新增布局之: flex详解
2020/06/18 HTML / CSS
Oroton中国官网:澳洲知名奢侈配饰品牌
2017/03/26 全球购物
党员承诺书范文
2014/05/19 职场文书
小学家长学校培训材料
2014/08/24 职场文书
2016大学军训心得体会
2016/01/11 职场文书
世界无敌的ICOM IC-R9500宽频接收机
2022/03/25 无线电
Tomcat用户管理的优化配置详解
2022/03/31 Servers