You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
'use strict';
var crypto = require('crypto');
// This string has length 32, a power of 2, so the modulus doesn't introduce a
// bias.
var _randomStringChars = 'abcdefghijklmnopqrstuvwxyz012345'; module.exports = { string: function(length) { var max = _randomStringChars.length; var bytes = crypto.randomBytes(length); var ret = []; for (var i = 0; i < length; i++) { ret.push(_randomStringChars.substr(bytes[i] % max, 1)); } return ret.join(''); }
, number: function(max) { return Math.floor(Math.random() * max); }
, numberString: function(max) { var t = ('' + (max - 1)).length; var p = new Array(t + 1).join('0'); return (p + this.number(max)).slice(-t); } };
|