创建数组的四种方法和判断数组的方法

创建数组的四种方法: 

  1.字面量形式:

    let arr = [];

  2.构造函数:

    let arr = new Array();

  3.工厂方法:

    let arr = Array();

  4.ES6新增的of方法:

    let arr = Array.of();

  之前通过new Array()或者是Array()创建数组有一些问题:
    1 如果没有传递参数,得到的是一个空数组
    
    2 如果传递了一个数字参数,得到的是带有一个长度的空数组
    
    3 如果传递一个非数字参数,得到的是带有一个成员的数组
    
    4 如果传递了多个非数字参数,得到就是一个带有多个参数的数组
    
  of方法是数组的一个静态方法,可以实现将所有传递的参数都作为数组中的成员存在
  
 
  实现of方法:
   
判断数组的四种方法:
  1.判断某个实例化对象和类(构造函数)的关系
    obj instanceof Array
    
  2.获取实例化对象的构造函数
    obj.constructor === Array
    
  3.ES5中构造函数调用的方法
    Array.isArray(obj)
    
  4.随便调用一个数组的方法,不是数组则报错
 
将类数组转为数组的方法: 
   类数组对象:可以通过索引值获取属性值,并且要具备length这一类对象
 
  1.call和apply改变方法的调用对象
    [].slice.apply(arrLike)
    
  2.ES6新增的from方法      
    Array.from(arrLike, fn)
    
    from方法是用于遍历类数组对象或将类数组对象转换成数组,是数组的静态方法。
      fn: 执行的函数,有两个参数:成员值、索引值。作用域是全局作用域           
      
 
 
  实现from方法:
  
原文地址:https://www.cnblogs.com/yess/p/14697989.html