uuidv4 creates v4 UUIDs.
| Category | Status |
| ---------------- | --------------------------------------------------------------------------------------------------- |
| Version | |
| Dependencies |
|
| Dev dependencies |
|
| Build |
|
| License |
|
This module will be deprecated in the future in favour of module uuid. Most of the functionality of this module is already included in uuid since version 8.3.0, so most of the functions of this module have already been marked as deprecated.
$ npm install uuidv4
First you need to integrate uuidv4 into your project by using the require function:
const { uuid } = require('uuidv4');
If you use TypeScript, use the following code instead:
import { uuid } from 'uuidv4';
Then you can create UUIDs. To do so simply call the uuid function:
console.log(uuid());
// => '11bf5b37-e0b8-42e0-8dcf-dc8c4aefc000'
To verify whether a given value is a UUID, use the isUuid function:
import { isUuid } from 'uuidv4';
console.log(isUuid('75442486-0878-440c-9db1-a7006c25a39f'));
// => true
Please note that the isUuid function returns true for both, v4 and v5 UUIDs. In addition, isUuid returns true for empty().
If you want to perform the verification on your own using a regular expression, use the regex property, and access its v4 or v5 property, depending on what you need:
import { regex } from 'uuidv4';
console.log(regex.v4);
console.log(regex.v5);
Please note that the regular expressions also consider empty() to be a valid UUID.
If you want to perform the verification on your own using a JSON schema, use the jsonSchema property, and access its v4 or v5 property, depending on what you need:
import { jsonSchema } from 'uuidv4';
console.log(jsonSchema.v4);
console.log(jsonSchema.v5);
Please note that the JSON schemas also consider empty() to be a valid UUID.
From time to time you need an identifier that looks like a UUID, but is actually inferred from a string. For that, use the fromString function, which returns a UUID v5:
import { fromString } from 'uuidv4';
console.log(fromString('the native web'));
// => 'cdb63720-9628-5ef6-bbca-2e5ce6094f3c'
By default, the fromString function uses a pre-configured namespace. If you want to use your own namespace, provide a UUID as second parameter:
import { fromString } from 'uuidv4';
console.log(fromString('the native web', '004aadf4-8e1a-4450-905b-6039179f52da'));
// => 'b1c4a89e-4905-5e3c-b57f-dc92627d011e'
If you need a UUID that consists only of zeros, use the empty function:
import { empty } from 'uuidv4';
console.log(empty());
// => '00000000-0000-0000-0000-000000000000'
To run quality assurance for this module use roboter:
$ npx roboter