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.
29 lines
562 B
29 lines
562 B
2 years ago
|
var toString = require('./toString');
|
||
|
|
||
|
/** Used to generate unique IDs. */
|
||
|
var idCounter = 0;
|
||
|
|
||
|
/**
|
||
|
* Generates a unique ID. If `prefix` is given, the ID is appended to it.
|
||
|
*
|
||
|
* @static
|
||
|
* @since 0.1.0
|
||
|
* @memberOf _
|
||
|
* @category Util
|
||
|
* @param {string} [prefix=''] The value to prefix the ID with.
|
||
|
* @returns {string} Returns the unique ID.
|
||
|
* @example
|
||
|
*
|
||
|
* _.uniqueId('contact_');
|
||
|
* // => 'contact_104'
|
||
|
*
|
||
|
* _.uniqueId();
|
||
|
* // => '105'
|
||
|
*/
|
||
|
function uniqueId(prefix) {
|
||
|
var id = ++idCounter;
|
||
|
return toString(prefix) + id;
|
||
|
}
|
||
|
|
||
|
module.exports = uniqueId;
|