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;
}
}
function test(){var newarr=[]var num=1for (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;}}
结果: