美文网首页
5、数组方法

5、数组方法

作者: my木子 | 来源:发表于2018-07-22 13:45 被阅读0次

    建议使用高阶函数例如 map() 和 reduce() 替代 iterators(迭代器)

    // map      映射(一一对应)
    let arr = [40,50, 88, 99];
    let rusult = arr.map(item => item < 60 ? '不及格' : '及格');
    console.log(rusult);
    
    const officers = [
      { id: 20, name: '张三' },
      { id: 24, name: '李四' },
      { id: 56, name: '王五' },
      { id: 88, name: '赵六'},
    ];
    const officersIds = officers.map(item => item.id);
    console.log(officersIds);
    
    // reduce   汇总(求总数,平均值等等)
    let arr = [40,50,188, 99];
    let rusult = arr.reduce((tmp, item, index )=>{
      return tmp + item;    //  tmp 是返回的值,item 循环每一个值 ,index 是下标
    });
    // 最大值
    let rusult = arr.reduce((tmp, item, index) => {
      return (tmp || 0) > item ? tmp : item;
    });
    console.log(rusult);
    
    // filter 过滤器
    let arr = [40,50, 88, 99];
    let rusult = arr.filter(item=>{
     if(item%3===0){
      return true;    // 返回 true 显示
    }else{
      return false;   // 返回 flase 不显示
    }
    });
    
    // forEach  循环(迭代)
    let arr = [40,50, 88, 99];
    let rusult = arr.forEach((item,index)=>{
      // item 循环每一个值 index 下标
    });
    
    //  new Set
    //  数组去重
        const arr = ['aa', 'bb', 'cc', 'aa'];
        console.log([...new Set(arr)]);
       console.log(Array.from(arr));
    
    // Array.from()
    // 从一个类似数组或可迭代对象创建一个新的,浅拷贝的数组实例。
    console.log(Array.from('foo'));
    // expected output: Array ["f", "o", "o"]
    
    console.log(Array.from([1, 2, 3], x => x + x));
    // expected output: Array [2, 4, 6]
    
    

    相关文章

      网友评论

          本文标题:5、数组方法

          本文链接:https://www.haomeiwen.com/subject/njmlmftx.html