2015-09-18 75 views
6

我必须生成独特的哈希 - 也许从时间戳。散列必须有最多8个字符。怎么做?如何从时间戳生成哈希?

现在我只有时间戳:

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

你必须使用一些库来生成散列。你可以试试这个: https://code.google.com/p/crypto-js/ – Vivek

+0

[相关:从一个整数生成8个字符的哈希](http://stackoverflow.com/questions/2520794/php-生成一个8字符哈希从一个整数) – usandfriends

+0

可能重复[在JavaScript中创建GUID/UUID?](http://stackoverflow.com/questions/105034/create-guid-uuid-in- javascript) – Limnic

回答

17

这可能看起来很有趣,但下面的代码可能会在未来几个世纪:)

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

之后,你可以扩展它工作得很好切片方法:(+new Date).toString(36).slice(-8)

+1

如果你想尽量减少碰撞的可能性,你可以试试这个:'((+ new Date)+ Math.random()* 100).toString(32)' –

+1

@DanielSokolowski为什么它会帮助最小化碰撞的可能性?我认为这完全相反。 – Michal