概念总结
js产生随机数通常是使用javascript的Math.random()函数
常用的几种方法:Math.random()表示:结果为0-1之间(包括0,不包括1);
Math.floor(Math.random()*10+1)表示结果为1-10之间的一个随机数
Math.floor(Math.random()*24)表示结果为0-23间的随机数
1.Math.random();返回0-1之间的随机数,可能为0,但是总是小于1,[0,1)
返回指定范围随机数(m~n)之间的范围的公式为:
Math.random()*(n-m)+m
2.Math.ceil(n);返回大于等于n的最小整数(向上取整)
用Math.ceil(Math.random()*10)时,主要获取1到10的随机整数,取0的几率很小
3.Math.round(n)返回n四舍五入后整数的值
用Math.round(Math.random());可均衡获取0和1的随机整数
用Math.round(Math.random()*10)时,可基本均衡获取0到10的随机整数
4.Math.floor(n)返回小于等于n的最大整数(向下取整)
用Math.floor(Math.random(*10))时,可均衡获取0到9的随机整数
随机数,向下取整案例
{
//变量存储获取方法
let sv = saveVar = {
set:
{
globals: (name, value) => pm.globals.set(name, value),
environment: (name, value) => pm.environment.set(name, value),
variables: (name, value) => pm.variables.set(name, value)
},
get:
{
globals: (name) => pm.globals.get(name),
environment: (name) => pm.environment.get(name),
variables: (name) => pm.variables.get(name)
},
readInfo: (name, value, type) => {
if (type == 1) {
sv.set.globals(name, value);
return sv.get.globals(name)
}
if (type == 2) {
sv.set.environment(name, value);
return sv.get.environment(name)
}
if (type == 3) {
sv.set.variables(name, value);
return sv.get.variables(name)
}
}, setObj:
{
globals: (name, value) => pm.globals.set(name, JSON.stringify(value)),
environment: (name, value) => pm.environment.set(name, JSON.stringify(value)),
variables: (name, value) => pm.variables.set(name, JSON.stringify(value))
}
,
getObj:
{
globals: (name) => JSON.parse(pm.globals.get(name)),
environment: (name) => JSON.parse(pm.environment.get(name)),
variables: (name) => JSON.parse(pm.variables.get(name))
},
readObj: (name, value, type = 0) => {
if (type == 1) {
sv.setObj.globals(name, value);
return sv.getObj.globals(name)
}
if (type == 2) {
sv.setObj.environment(name, value);
return sv.getObj.environment(name)
}
if (type == 3) {
sv.setObj.variables(name, value);
return sv.getObj.variables(name)
}
}
};
let md = {
//获取json,没有注销,否则会报错
// json: pm.response.json(),
//字符转json
isJsonF: (value) => (new Function("return " + value)()),
//json转字符
toString: (value) => JSON.stringify(value),
//字符转json(脚本自带方法)
isJsonP: (value) => JSON.parse(value),
//随机数向下取整
floorRandom:(value)=>Math.floor(Math.random() * value),
};
let channelNameInfos = sv.getObj.environment("channelNameInfo");
let channelNameList = channelNameInfos.channelNameList;
let channelNameCount = channelNameInfos.channelNameCount;
//随机抽取渠道名称
channelNameCount = md.floorRandom(channelNameCount);
let channelName = channelNameList[channelNameCount];
sv.set.variables("channelName",channelName);
}