ES6新增数组方法(部分)

Array.from()

  • 将类数组对象或可迭代对象转换为数组

  • 并不是原型方法,需要通过Array调用

  • 其中传入第一个参数为所要转换的值

  • 可选择性传入第二个参数,为处理转换后的数组的函数

    var list = document.getElementsByTagName('li');
    Array.from(list, li => li.style.color = 'plum');

Array.of()

  • 通过Array()创建数组时,若只传入一个数字,会生成长度为该参数的数组

  • 无法生成仅包含该数字的数组

  • Array.of()弥补了这一缺陷,无论传入多少个参数,都会生成对应参数组成的数组

  • 不是原型方法

    var arr2 = Array.of(7);
    //arr2=[7]

find()

  • 循环遍历数组,如果有满足条件的项即返回那一项

  • 一旦找到一个符合的项,不再继续遍历

  • 参数为一个函数,函数参数有

    • element:遍历到的值

    • index:遍历到的索引

    • array:遍历的数组

var list = [
  {name: 'ashen', age: 20},
  {name: 'sjj', age: 15},
  {name: 'tx', age: 23}
];
//此处只遍历到了第一项
var ret = list.find(item => item.name === 'ashen');
console.log(ret);

findIndex()

  • 循环遍历数组,如果有满足条件的项即返回那一项的索引

  • 一旦找到一个符合的项,不再继续遍历

  • 参数为一个函数,函数参数有

    • element:遍历到的值

    • index:遍历到的索引

    • array:遍历的数组

var ret1 = list.findIndex(item => item.age === 23);
console.log(ret1);

some()

  • 循环遍历数组,寻找是否有符合条件的项,有就返回true,没有就返回false

  • 一旦找到符合的项,不再继续遍历

  • 参数为一个函数,函数参数有

    • element:遍历到的值

    • index:遍历到的索引

    • array:遍历的数组

var ret2 = list.some(item => {
   console.log(item);//此处只输出了前两项
   if (item.age < 20) {
       return true
  }
   return false;
});
//或简写为
var ret2 = list.some(item => item.age < 20);

 

posted @ 2020-03-24 16:31  ashen1999  阅读(135)  评论(0编辑  收藏  举报