js的随机数生成器,不再使用Math.random
2016-05-18 14:29
555 查看
先上代码:
var randomNum = (function(){
var today = new Date();
var seed = today.getTime();
function rnd(){
seed = ( seed * 9301 + 49297 ) % 233280;
return seed / ( 233280.0 );
};
return function rand(number){
return Math.ceil(rnd(seed) * number);
};
})();
测试下:
console.log(randomNum(100))
console.log(randomNum(100))
console.log(randomNum(100))
为神马会使用9301,49297和233280这几个数字?原理见这里 http://www.zhihu.com/question/22818104
var randomNum = (function(){
var today = new Date();
var seed = today.getTime();
function rnd(){
seed = ( seed * 9301 + 49297 ) % 233280;
return seed / ( 233280.0 );
};
return function rand(number){
return Math.ceil(rnd(seed) * number);
};
})();
测试下:
console.log(randomNum(100))
console.log(randomNum(100))
console.log(randomNum(100))
为神马会使用9301,49297和233280这几个数字?原理见这里 http://www.zhihu.com/question/22818104
相关文章推荐
- [转载]javascript 隐性类型转换步骤
- j2ee中的重定向和转发
- js的继承
- Javascript--装饰器模式和观察者模式
- [repost]State of the Art JavaScript in 2016
- 自动提取HTML中的JS进行合并与压缩
- js判断undefined类型
- ssh框架与json的整合,没导入相应jar包报的错误提示
- Angular JS中 Promise用法
- 理解Javascript中的变量作用域(scope)和语境(context)
- Extjs之自动消失提示框(Ext.example.msg)
- js file img 操作
- [js]关于闭包与访问数组下标的老生常谈
- Ajax跨域:jsonp还是CORS
- js将对象所有属性(都是数字,浮点小数),将其保留整数
- js求时间差
- JavaScript数组常用操作大全
- JavaScript编写Web脚本最佳实现
- JavaScript编写Web脚本最佳实现
- Javascript复习第七天 简陋的五子棋