在JavaScript中从String生成HASH(唯一随机)

时间:2014-10-09 06:16:51

标签: javascript random parse-platform

我在我的一个项目中使用Parse(www.parse.com)作为后端。

我想通过在Java脚本中每次应用当前日期和时间来生成唯一的随机(Promocode)。随机应该是可读的字母/数字。

我通过Google搜索了解随机生成过程。但我不确定这是否总是独一无二的。所以要检查一下,每次我必须联系后端,是否有任何已经存在的随机与当前的匹配。这是一个漫长的过程。由于我需要在注册过程中执行此过程,因此我需要一个更好的解决方案。

有人可以为此提供帮助吗?

1 个答案:

答案 0 :(得分:0)

我可以从你的问题中理解你需要一个好的哈希函数,它确保每次值都是唯一的,这样你就不必长时间检查值是唯一的还是已经存在

首先让我清楚一点,哈希并不一定意味着“独特”。但他们应该是足够独特的'。对于JS中最好的散列库,您应该查看crypto.js

他们有不同类型的散列函数,请看一下:

<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/sha256.js"></script>
<script>
    var hash = CryptoJS.SHA256("Message");

    alert(typeof hash); // object

    alert(hash); // 2f77668a9dfbf8d5848b9eeb4a7145ca94c6ed9236e4a773f6dcafa5132b2f91
</script>

我的意思是查看该哈希函数生成的值。重复该值的可能性非常小。所以,你可以安全地使用那个或者挖掘出你认为最适合你的库。