js 判断各种数据类型:
了解js的都知道, 有个typeof 用来判断各种数据类型,有两种写法:typeof xxx ,typeof(xxx)
typeof 2 // 输出 number
typeof null // 输出 object
typeof {} // 输出 object
typeof [] // 输出 object
typeof (function(){}) // 输出 function
typeof undefined // 输出 undefined
typeof '222' // 输出 string
typeof true // 输出 boolean相信大家已经发现了 , typeof 判断数据类型 ,并不严谨 !
因为 不管是 数据 还是 对象 或者是 null , 都返回了 object ,虽说 这几个都属于对象 , 但具体是的 我们无法判断 !
instanceof 判断
var ary = [1,23,4];
console.log(ary instanceof Array) //true; 这样会直接返回一个 boolean 值 , 这样我们就可以确认 具体是那种类型了 !
通用方法:
var ary = [1,23,4];
function isArray(o){
return Object.prototype.toString.call(o)=='[object Array]';
}
console.log(isArray(ary));具体Object.prototype.toString 的用法,请参照 的用法Object.prototype.toString
版权声明:本文为shaowei828原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。