Skip to content
Permalink
master
Switch branches/tags
Go to file
6 contributors

Users who have contributed to this file

@jdalton @bertyhell @PxyUp @falsyvalues @jisaacks @blikblum
/** Used to generate unique IDs. */
const idCounter = {}
/**
* Generates a unique ID. If `prefix` is given, the ID is appended to it.
*
* @since 0.1.0
* @category Util
* @param {string} [prefix=''] The value to prefix the ID with.
* @returns {string} Returns the unique ID.
* @see random
* @example
*
* uniqueId('contact_')
* // => 'contact_104'
*
* uniqueId()
* // => '105'
*/
function uniqueId(prefix='$lodash$') {
if (!idCounter[prefix]) {
idCounter[prefix] = 0
}
const id =++idCounter[prefix]
if (prefix === '$lodash$') {
return `${id}`
}
return `${prefix}${id}`
}
export default uniqueId