区别数组和对象的三种方法
因为typeof
判断对象和数组都为Object
的类型,
所以有时无法判断一个值的类型是对象还是数组。
<script type="text/javascript">
var obj = [];
//现在判断 obj 是属于社么类型的值
</script>
1.constructor
数组的构造函数是function Array(){...}
对象的构造函数是function Object() { ...}
2.instanceof
查看obj的原型链里有没有Array的构造函数,
如果有返回true,即obj是Array数组类型的。
3.toString
改变this的指向,让数组调用Object的to.String方法。