HiveBrain v1.2.0
Get Started
← Back to all entries
snippetjavascriptCritical

How do I create a GUID / UUID?

Submitted by: @import:stackoverflow-api··
0
Viewed 0 times
uuidhowguidcreate

Problem

How do I create GUIDs (globally-unique identifiers) in JavaScript? The GUID / UUID should be at least 32 characters and should stay in the ASCII range to avoid trouble when passing them around.

I'm not sure what routines are available on all browsers, how "random" and seeded the built-in random number generator is, etc.

Solution

UUIDs (Universally Unique IDentifier), also known as GUIDs (Globally Unique IDentifier), according to RFC 4122, are identifiers designed to provide certain uniqueness guarantees.

While it is possible to implement RFC-compliant UUIDs in a few lines of JavaScript code (e.g., see @broofa's answer, below) there are several common pitfalls:

  • Invalid id format (UUIDs must be of the form "xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx", where x is one of [0-9, a-f] M is one of [1-5], and N is [8, 9, a, or b]



  • Use of a low-quality source of randomness (such as Math.random)



Thus, developers writing code for production environments are encouraged to use a rigorous, well-maintained implementation such as the uuid module.

Context

Stack Overflow Q#105034, score: 2644

Revisions (0)

No revisions yet.