6-5 WPS JS宏 集合成员迭代(随机生成试题)
2026/5/14 10:54:27 网站建设 项目流程

示例:随机生成试题

题库:

结果:

代码:

function 试卷(){

var arr=Sheets("题库").Range("a2:b21").Value();

var s=rnd(8,1,arr.length);

var num=1;

var newarr=[];

for(var v of s){

newarr.push([num++,...arr[v-1]]);

//重点:通过随机出来的数字,放入到数组arr[V]中代替索引号,找到数组。

//arr[v-1]为什么要-1,是因为索引号是从0-n,随机的数字是1-n,不匹配,所以要-1。

}

Sheets("试卷").Range("a2").Resize(newarr.length,newarr[0].length).Value2=newarr;

}

function rnd(counter,start,end){

var s=new Set();

if(end-start>=counter){

while(true){

var num=WorksheetFunction.RandBetween(start,end);

s.add(num);

if(s.size==counter){break};

}

}

return [...s];

}

function 试卷(){ var arr=Sheets("题库").Range("a2:b21").Value(); var s=rnd(8,1,arr.length); var num=1; var newarr=[]; for(var v of s){ newarr.push([num++,...arr[v-1]]); //重点:通过随机出来的数字,放入到数组arr[V]中代替索引号,找到数组。 //arr[v-1]为什么要-1,是因为索引号是从0-n,随机的数字是1-n,不匹配,所以要-1。 } Sheets("试卷").Range("a2").Resize(newarr.length,newarr[0].length).Value2=newarr; } function rnd(counter,start,end){ var s=new Set(); if(end-start>=counter){ while(true){ var num=WorksheetFunction.RandBetween(start,end); s.add(num); if(s.size==counter){break}; } } return [...s]; }

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询