运行结果

在这里插入图片描述

代码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>高阶函数之数组练习</title>
  <script src="../js/vuejs-2.5.16.js"></script>
</head>
<body>

</body>
<script>
  /*
  * filter() 函数的作用主要是对数组进行条件过滤,条件为Boolean值  不是true就是false
  * map()  函数的主要作用是对过滤之后的新数组进行重新映射
  * reduce() 函数的主要作用是对数组的结果进行汇总,改函数至少要有两个参数
  * */
  const arr = [11,52,115,188,68,321,223,64]
  //  写法一
  let totalFirst = arr.filter(function (n) {
    return n<300
  }).map(function (n) {
    return n*2
  }).reduce(function (pre,n) {
    return pre + n
  },0)
  console.log(totalFirst);
  // 写法二  (遍历数组中小于100的)
  let totalSecond = arr.filter( n => n <100).map( n => n*2).reduce((pre,n) => pre+n ,0)
  console.log(totalSecond);
</script>
</html>

Logo

前往低代码交流专区

更多推荐