js中区分对象与数组常用方法

来源:互联网 发布:苹果6splus网络不稳定 编辑:程序博客网 时间:2024/06/10 00:57
如果你只是用typeof来检查该变量,不论是array还是object,都将返回‘object'。

1,Object.prototype.toString.call(obj) 判断数组 对象

Object.prototype.toString.call([]) === '[object Array]’ // true

Object.prototype.toString.call({}) === ‘[object Object]’ // true

functionisArray(arg) {   
     if (typeof arg === 'object') {       
          return Object.prototype.toString.call(arg) === '[object Array]';
   }   
     returnfalse;
}
2,Array.isArray()  判断数组
var a=newArray();      Array.isArray(a);//true

3,instanceof 实例,例子
vara=newArray();     ainstanceof Array;//true
vara=newArray();     ainstanceof Object;//true
var a = {};            a instanceof Object  //true   

4、constructor 返回类型String Number Boolean Array Date Object
var a=newArray();     a.constructor === Array;//true
原创粉丝点击