js判断数据类型

123 阅读1分钟

1、typeof,

typeof对大多数的类型判断都是正确的,返回的都是小写的字符串类型,但是无法区分数组,null,和真正的Object,它的判断都是"object"。

2、Object.prototype.toString.call(),

Object.prototype.toString.call()的方法,各种类型都合适,判断准确,也是我准备长期使用的一种方法,返回的结果如[Object Array],据我所知,jQuery的内部工具、vue的内部工具,mock的内部工具,都是采用的这种方法。


Vue内部判断方法,简单粗暴:

var _toString = Object.prototype.toString;
function toRawType (value) {
   return _toString.call(value).slice(8, -1) // 直接从第八位返回到倒数第二位
}