如何判断一个对象是不是数组

  1. 使用instanceof

    1
    2
    3
    4
    // 如果返回true那么说明就是数组
    if (value instanceof Array){

    }
  2. 使用Object.prototype.toString

    1
    2
    3
    4
    // 由于数组重写了toString方法,我们可以使用Object.prototype.toString方法来判断对象是不是数组
    if (Object.prototype.toString.call(value) === "[object Array]"){

    }
  3. 使用value.constructor.name

    1
    2
    3
    4
    // 检测构造函数的名称是不是Array
    if (value.constructor.name === "Array"){

    }
  4. 使用ES5的Array.isArray()

    1
    2
    3
    4
    // ES5标准 简单 好用 低版本浏览器不支持
    if (Array.isArray(value)){

    }
-------------本文结束 感谢您的阅读-------------
0%