5-22 WPS JS宏reduce数组的归并迭代应用(实例:提取最大最小值的记录)

5-22 WPS JS宏reduce 数组的归并迭代应用(实例:提取最大最小值的记录)

要求:提取最大最小值的记录

代码:

function test(){

var newarr=[]

var num=1

for (var rng of Range("a2:a12")){

var arr=rng.Resize(1,3).Value()[0];

newarr.push(arr);

}

for (var rng of Range("a2:a12")){

var arr=rng.Resize(1,3).Value()[0];

newarr.push(arr);

}

for (var cls of ["A村","B村","C村"]){

var filterarr=newarr.filter(v=>v[0]==cls)

var arr1=filterarr.reduce((x,y)=>(x[2]>y[2])?x:y);

var arr2=filterarr.reduce((x,y)=>(x[2]<y[2])?x:y);

Range("f1:h1").Offset(num++).Value2=arr1;

Range("f1:h1").Offset(num++).Value2=arr2;

}

}

javascript 复制代码
function test(){

 var newarr=[]

  var num=1

for (var rng of Range("a2:a12")){

  var arr=rng.Resize(1,3).Value()[0];

  newarr.push(arr);

}



  

for (var rng of Range("a2:a12")){

 var arr=rng.Resize(1,3).Value()[0];

  newarr.push(arr);

}



for (var cls of ["A村","B村","C村"]){

 var filterarr=newarr.filter(v=>v[0]==cls)

  var arr1=filterarr.reduce((x,y)=>(x[2]>y[2])?x:y);

   var arr2=filterarr.reduce((x,y)=>(x[2]<y[2])?x:y);

 Range("f1:h1").Offset(num++).Value2=arr1;

  Range("f1:h1").Offset(num++).Value2=arr2;

  }

  }

结果:

相关推荐
有位神秘人15 小时前
Android中Notification的使用详解
android·java·javascript
phltxy15 小时前
Vue 核心特性实战指南:指令、样式绑定、计算属性与侦听器
前端·javascript·vue.js
Trouvaille ~16 小时前
【Linux】UDP Socket编程实战(一):Echo Server从零到一
linux·运维·服务器·网络·c++·websocket·udp
嵌入小生00716 小时前
Shell | 命令、编程及Linux操作系统的基本概念
linux·运维·服务器
Byron070716 小时前
Vue 中使用 Tiptap 富文本编辑器的完整指南
前端·javascript·vue.js
css趣多多16 小时前
地图快速上手
前端
zhengfei61116 小时前
面向攻击性安全专业人员的一体化浏览器扩展程序[特殊字符]
前端·chrome·safari
一只小小的芙厨17 小时前
寒假集训笔记·树上背包
c++·笔记·算法·动态规划
-Try hard-17 小时前
Linuv软件编程 | Shell命令
linux·运维·服务器
码丁_11717 小时前
为什么前端需要做优化?
前端