Como criar GUID / UUID em JavaScript? Preciso de um método funcional
Olá a todos! Estou escrevendo uma pequena aplicação web em JavaScript puro (sem frameworks), e preciso gerar identificadores únicos para registros no localStorage. O problema é que os usuários podem criar muitos registros, e quero evitar colisões (IDs duplicados).
Sei que em outras linguagens (como C# ou Python) existem funções embutidas para criar GUID/UUID. Em JavaScript, não encontrei isso. Tentei escrever minha própria função usando Math.random(), mas, depois de ler no Stack Overflow, entendi que isso não é seguro e pode gerar duplicatas.
Aqui está o que tentei:
```javascript
function generateId() {
return Math.random().toString(36).substr(2, 9);
}
```
Isso funciona, mas não tenho certeza sobre a unicidade. Vi que muitos recomendam usar a API `crypto.randomUUID()`, mas não sei se é suportada em todos os navegadores. Também existe a opção com bibliotecas (como uuid), mas gostaria de evitar dependências externas.
Por favor, me digam como fazer corretamente.