Yuka.js库中的MathUtils类提供了一个用于生成UUID的generateUUID方法。
UUID是一个通用唯一标识符(Universally Unique Identifier),是一种软件构建的标准,它可以确保信息在被生成时是唯一的,没有重复的可能。
generateUUID方法使用Math.random()函数生成一个随机的UUID,可以用于创建唯一的标识符。
import { MathUtils } from 'yuka';
const uuid = MathUtils.generateUUID();
console.log(uuid);
// 输出:f7aada77-191c-4e1f-8771-08ddd8b19cbd
generateUUID方法不接受任何参数。
generateUUID方法返回一个字符串类型的UUID,格式为8-4-4-4-12的连字符分隔的十六进制数字组成,共有36个字符。
MathUtils.generateUUID(); // f7aada77-191c-4e1f-8771-08ddd8b19cbd
MathUtils.generateUUID(); // c108c2a7-66db-4843-bb3d-d15eafd3ac9c
MathUtils.generateUUID(); // ab97c259-9077-472a-866d-c711e8bb53c1
generateUUID方法首先使用Math.random()函数生成一个长度为36的随机字符串,然后根据UUID的格式将这个字符串分成5段,并在这些段之间加上连字符,最终得到一个36位的UUID。
其中第1段为8个字符,使用Math.random()生成的随机8位十六进制数字,形如:f7aada77。
第2、3段为各4个字符,使用Math.random()生成的随机4位十六进制数字,形如:191c、4e1f。
第4段为12个字符,使用Math.random()生成的随机12位十六进制数字,形如:08ddd8b19cbd。
第5段为8个字符,使用Math.random()生成的随机8位十六进制数字,形如:f7aada77。
generateUUID方法不依赖于任何浏览器特定的api,因此可以在所有主流浏览器(Chrome、Firefox、Safari、Edge、IE11等)中使用。