Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function getNumericISOString() {
- // Get string unique to this millisecond
- let isoString = new Date().toISOString();
- // Remove constant characters
- return isoString.replace(/[^0-9]/g, '');
- }
- function* generateId() {
- let iterator = 0;
- let prevId = null;
- while (true) {
- let newId = getNumericISOString();
- // If id is not unique, increment iterator
- // Else reset iterator to 0
- iterator = newId === prevId ? ++iterator : 0;
- // Save id for comparison
- prevId = newId;
- yield newId += '-' + iterator;
- }
- }
- const myGen = generateId();
- console.log(myGen.next().value);
- console.log(myGen.next().value);
- console.log(myGen.next().value);
- console.log(myGen.next().value);
- console.log(myGen.next().value);
- console.log(myGen.next().value);
- console.log(myGen.next().value);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement