Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг
06 Июл 2023
2 мин
1722

Генерация GUID / UUID в JavaScript

GUID (Глобально-уникальный идентификатор) или UUID (Универсально-уникальный идентификатор) — это строка из 32 символов, которая гарантирует уникальность

GUID (Глобально-уникальный идентификатор) или UUID (Универсально-уникальный идентификатор) — это строка из 32 символов, которая гарантирует уникальность идентификатора в глобальном масштабе. Они часто используются для идентификации информации в информационных системах. Например, в системе, где требуется идентифицировать каждый элемент данных уникальным образом, не зависимо от того, где и когда он был создан.

Для создания GUID / UUID в JavaScript можно использовать различные подходы. Один из самых простых и распространенных подходов — это использование встроенного объекта Math и его метода random(). Однако, важно отметить, что этот метод не гарантирует абсолютную уникальность идентификатора.

function create_UUID() {
    return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
        var r = Math.random() * 16 | 0,
            v = c == 'x' ? r : (r & 0x3 | 0x8);
        return v.toString(16);
    });
}

var uuid = create_UUID();
console.log(uuid);

В приведенном выше коде, функция create_UUID() возвращает строку, где каждый символ x и y заменяется случайным числом или буквой от a до f. | 0 используется для округления результата до ближайшего целого числа.

Однако, более безопасным и надежным подходом является использование сторонних библиотек, таких как uuid. Эта библиотека предлагает функции для генерации всех версий UUID и проверена сообществом разработчиков.

const { v4: uuidv4 } = require('uuid');
console.log(uuidv4());

В этом примере, функция uuidv4() из библиотеки uuid используется для создания UUID версии 4, которая генерирует UUID, основанный на случайных числах.

В заключении, генерация GUID / UUID в JavaScript может быть выполнена различными способами. Важно выбрать подход, который наиболее подходит для конкретной задачи и обеспечивает необходимый уровень уникальности и безопасности.

Добавить комментарий