使用js随机方法很简单,提前规划出来人数,最少得0.01(不能为空);
小数点相加会有异常。最好乘以100后,相加、减再除以100。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<title>前端ABC-Js实现随机红包</title>
</head>
<body>
<script>
function ranDom(num,mnum){
var dnum = [];
var lastData = [];
var gding = num * 100 - mnum;
var znum = 0;
for(var i = 0;i < mnum - 1;i++){
dnum[i] = parseInt(Math.random() * (gding - znum));
znum += dnum[i];
};
dnum[dnum.length] = gding - znum;
for(var i = 0;i < mnum;i++){
lastData[i] = (dnum[i] + 1) / 100;
};
//console.log(lastData);
//console.log(dnum);
//console.log(znum);
return lastData;
};
document.write('[' + ranDom(24,10).join(',') + ']');
</script>
</body>
</html>
前端ABC