1 /**
2 * @description generate a random number
3 * @author x.radish
4 * @param {int} _minNum The min number
5 * @param {int} _maxNum The max number
6 * @param {Array} _rejArr reject array
7 * @return {int} -1 error
8 */
9 function random(_minNum,_maxNum,_rejArr){
10 var minNum=_minNum||4,
11 maxNum=_maxNum||17,
12 rejArr=_rejArr||[],
13 num=-1,
14 flag=true;
15 num = Math.floor(Math.random()*(maxNum-minNum+1)+minNum);
16 if(rejArr.length>maxNum-minNum) return -1;
17 for(var i=0,len=rejArr.length;i<len;i++){
18 if(num==rejArr[i]){
19 flag=false; break;
20 }
21 }
22 if(flag) return num; else return random(minNum,maxNum,rejArr);
23 }
/**
* @description Direct interception of the decimal without rounding
* @author x.radish
* @param {int} digits The number of decimal places
* @return {Number}
*/
Number.prototype.toFix=function(digits){
var f=parseInt(digits),
n=Number(this),
s=n.toString();
var p=s.split(".");
if(p[1]&&p[1].length>f){
p[1]=p[1].substring(0,f);
n=Number(p.join("."));
}else{
n=Number(this);
}
return n;
}