Es6-数组新增的方法

这个文件中所说的三个方法: 都是构造函数的方法 Array.方法名()
不是数组对象的方法,注意调用格式 数组名.方法名()
Array.from: 将类数组转化为数组
类数组: 有下标,有length, 但是无法使用数组的方法

参数1: 需要转化的类数组
参数2; 处理的方式(可选的)
参数3: 函数执行时this的指向(可选)

        <ul>
  		 <li></li>
  		 <li></li>
  		 <li></li>
   		</ul>
   		<script>
        let lis = document.querySelectorAll("li");
        console.log(lis);
        lis = Array.from(lis,(item,index)=>{
                 item.textContent = "列表";
                 console.log(index);  //0,1,2
       });
       </script>

map():
返回一个新数组,新数组中的元素,是原数组中按照指定需求处理过的数据

lis.map((item)=>item); // 转化为数组后,才可以使用数组自带的方法

把类数组转化成数组,我们常用的两种方式:
1. Array.from
2. 展开运算符

检测 数据是否是个数组

    // lis = [...lis];
        // lis.sort();
         console.log(Array.isArray(lis)); //true

Array.of() : 将参数组成一个 新的 数组

        let arr = [1,2,3,4,5];
        arr = Array.of("a","b"); // 新数组会覆盖原有数据
        console.log(arr);//["a","b"]

sort(): 将数组排序

  let  arr = [2,1,3,5,4];
       //  arr= arr.sort((n1,n2)=>{
            // return -1;    //返回负值  交换顺序
            // return 0 或者 1   //返回正值   保持顺序不变
           
           //  console.log(n1,n2);
            // return n2-n1;
             
        //     // n2 - n1  从大到小
        //     // n1 - n2  从小到大
        // });
        arr= arr.sort((n1,n2)=>n1-n2);
    
    console.log(arr);//[1,2,3,4,5]

你可能感兴趣的:(Es6-数组新增的方法)