类似微信红包随机分配js方法

function calc(money,person){
var tmp=[]
for(i=0;i<person;i++){
tmp.push(Math.random())
}
var total=eval(tmp.join('+'));
var arr=[];
for(i=0;i<tmp.length;i++){
arr[i]=tmp[i]/total;
}
//console.log('arr is '+arr)
var cc=[];
for (i=0;i<arr.length-1;i++){
cc[i]=parseInt(money*arr[i])
}
var len = arr.length;
cc[len-1]=money-eval(cc.join('+'));
return cc;
}

 

//缺点呢。。1,最后一个数可能会很小,2,有可能出现0的情况。。

posted @ 2015-12-29 16:51  天氣的錯錯在你麼  阅读(375)  评论(0编辑  收藏  举报