检测数组类型
Posted tangjiao_Miya
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检测数组类型相关的知识,希望对你有一定的参考价值。
面试时候被人问如何检测一个未知变量是不是数组类型,丢脸啊,老祖宗的脸都丢没了,这都不会,回家啃书本去吧!!!
var a = [];
方法一:Array.isArray([]) //true
typeof a 在这里是帮不上忙的呦,对于数组类型返回的是object,并且是对于除了函数以外的所有对象都是如此,心累吧,瞎忙活!
方法二:a instanceof Array //true
但是不能视为一个可靠的数组检测方法。
方法三:检测对象的类属性,对于数组来说该属性的值总是‘Array’,
Object.prototype.toString()方法进行判断,因此isArray()函数的代码可以酱紫写
var isArray = Function.isArray || function(o){ return typeof o === ‘object‘ && Object.prototype.toString.call(o) ===‘[object Array]‘; }
以上是关于检测数组类型的主要内容,如果未能解决你的问题,请参考以下文章