JS 如何判断精确的判断数据类(数组对象)

Posted 记住这些就成为了大神

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 如何判断精确的判断数据类(数组对象)相关的知识,希望对你有一定的参考价值。

利用 Object.prototype.toString 判断数据类型

普通的判断方式有各种不足,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]‘;
  }

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

以上是关于JS 如何判断精确的判断数据类(数组对象)的主要内容,如果未能解决你的问题,请参考以下文章

JS的数据类型判断函数数组对象结构处理日期转换函数,浏览器类型判断函数合集

js怎么判断一个对象是否类数组对象

js中通过Object.prototype.toString方法----精确判断对象的类型

js如何判断变量的数据类型

使用Object.prototype.toString.call()方法精确判断对象的类型

js判断是否数组的方法