js 中关于数据类型的判断

Posted

tags:

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

1.轻量级typeof

typeof 通常能判断以下6种数据类型,在平时开发中使用率比较高,存在的缺点是不够精准。比如typeof 对 array ,null,{}的判断均输出了Object。

  • "number"
  • "string"
  • "boolean"
  • "object"
  • "function"
  • "undefined"  

2.我们来讨论下另一个种方式:Object.prototype.toString.call,这是对象的一个原生原型扩展函数,用来更精确的区分数据类型。

  var   getType=Object.prototype.toString;

  getType.call(‘aaaa‘)        输出      [object String]

      getType.call(2222)         输出      [object Number]

      getType.call(true)          输出      [object Boolean]

      getType.call(undefined)  输出      [object Undefined]

      getType.call(null)                  输出   [object Null]

      getType.call({})                   输出   [object Object]

      getType.call([])                    输出   [object Array]
      getType.call(function(){})     输出   [object Function]

还有[object Document](IE)或者  [object htmlDocument](firefox,google)等dom节点的判断

以上是关于js 中关于数据类型的判断的主要内容,如果未能解决你的问题,请参考以下文章

asp.net C# 中关于 var 类型的疑问?

js判断数据类型方法汇总

java中关于String类型对象的问题--判断是不是是相同的对象

C++ 中关于有符号类型(singned)和无符号类型(unsigned)

前端开发:JS中关于去重操作的使用

在SQL-Server中关于日期的数据类型都有哪些?