util-helpers
Version:
36 lines (32 loc) • 857 B
JavaScript
;
var ut2 = require('ut2');
var letter = 'abcdefghijklmnopqrstuvwxyz';
var chars = {
number: '0123456789',
lower: letter,
upper: letter.toUpperCase()
};
var allChars = chars.number + chars.lower + chars.upper;
function internalRandomString(len, pool, prefix) {
if (prefix === void 0) { prefix = ''; }
while (len-- > 0) {
var r = pool[ut2.randomInt(0, pool.length - 1)];
return internalRandomString(len, pool, prefix + r);
}
return prefix;
}
var randomString = function (len, pool) {
if (len === void 0) { len = 0; }
var _pool;
if (typeof pool !== 'string') {
_pool = allChars;
}
else if (chars[pool]) {
_pool = chars[pool];
}
else {
_pool = pool;
}
return internalRandomString(ut2.toNumber(len), _pool);
};
module.exports = randomString;