2015-09-18 14 views
6

Devo generare un hash univoco, forse dal timestamp. hash deve contenere max 8 caratteri. Come farlo?Come generare hash da timestamp?

Per ora ho solo timestamp:

var t = new Date().getTime(); 
+0

Dovrai utilizzare qualche libreria per generare hash. Puoi provare questo: https://code.google.com/p/crypto-js/ – Vivek

+0

[Correlato: generare un hash di 8 caratteri da un numero intero] (http://stackoverflow.com/questions/2520794/php- generate-an-8-character-hash-from-an-integer) – usandfriends

+0

possibile duplicato di [Crea GUID/UUID in JavaScript?] (http://stackoverflow.com/questions/105034/create-guid-uuid-in- javascript) – Limnic

risposta

17

che possono sembrare divertente, ma il seguente codice può funzionare bene per i prossimi due secoli :)

(+new Date).toString(36); // "iepii89m" 

dopo che è possibile estenderlo con metodo di affettamento: (+new Date).toString(36).slice(-8).

+1

E se vuoi minimizzare la possibilità di collisione puoi provare questo: '((+ nuova Data) + Math.random() * 100) .toString (32)' –

+1

@DanielSokolowski Perché aiuterebbe a ridurre al minimo il possibilità di collisione? Direi che è esattamente l'opposto. – Michal

Problemi correlati