Allow custom format for random values #3
|
@ -55,6 +55,9 @@ var i;
|
|||
for (i = 0; i < 100; i += 1) {
|
||||
console.log(hri.random());
|
||||
}
|
||||
|
||||
// Use custom pattern of number-noun-adjective
|
||||
console.log(hri.get('#na'));
|
||||
```
|
||||
|
||||
### bower / browser
|
||||
|
|
27
index.js
27
index.js
|
@ -7,11 +7,11 @@
|
|||
, animals = []
|
||||
, adjectives = []
|
||||
, numbers = []
|
||||
;
|
||||
;
|
||||
|
||||
function genNumbers() {
|
||||
var i = 2
|
||||
;
|
||||
;
|
||||
|
||||
numbers = [];
|
||||
numbers.push(0);
|
||||
|
@ -46,20 +46,27 @@
|
|||
// Accepts a format as a stirng of 'a' for adjective, 'n' for noun, and '#' for number
|
||||
function get(format) {
|
||||
populate();
|
||||
hri = new Array();
|
||||
for (var i = 0; i < format.length; i++) {
|
||||
switch (format[i]) {
|
||||
case 'a': hri.push(adjectives.pop()); break;
|
||||
case 'n': hri.push(animals.pop()); break;
|
||||
case '#': hri.push(adjectives.pop()); break;
|
||||
let hri = [];
|
||||
for (let item of format) {
|
||||
switch (item) {
|
||||
case 'a':
|
||||
hri.push(adjectives.pop());
|
||||
break;
|
||||
case 'n':
|
||||
hri.push(animals.pop());
|
||||
break;
|
||||
case '#':
|
||||
hri.push(numbers.pop());
|
||||
break;
|
||||
default:
|
||||
throw 'Unexpected value ' + format[i] + '. Expected a,n,#';
|
||||
throw 'Unexpected value ' + item + '. Expected a,n,#';
|
||||
}
|
||||
}
|
||||
|
||||
return hri.join('-');
|
||||
}
|
||||
|
||||
exports.humanReadableIds = { random: random };
|
||||
exports.humanReadableIds = {random: random, get: get};
|
||||
exports.hri = exports.humanReadableIds;
|
||||
|
||||
}('undefined' !== typeof exports && exports || new Function('return this')()));
|
||||
|
|
|
@ -9,4 +9,8 @@
|
|||
for (i = 0; i < 100; i += 1) {
|
||||
console.log(hri.random());
|
||||
}
|
||||
|
||||
for (i = 0; i < 10; i += 1) {
|
||||
console.log(hri.get('#na'));
|
||||
}
|
||||
}('undefined' !== typeof exports && exports || new Function('return this')()));
|
||||
|
|
Loading…
Reference in New Issue