【问题标题】:Generating a random string from user phone number从用户电话号码生成随机字符串
【发布时间】:2016-10-22 19:37:13
【问题描述】:

我正在构建一个应用程序,我想在其中向每个用户发送唯一代码或推荐代码。所以我想从用户手机号码生成随机字符串。每个随机字符串对于每个手机号码都应该是唯一的。如何我应该这样做吗? 是否有任何 JavaScript 库或任何好的链接?

【问题讨论】:

  • 您可以只对电话号码进行 MD5 编码。见:stackoverflow.com/questions/415953/…
  • 您可以为此编写自己的逻辑,您的问题没有具体答案。
  • 所以要明确一点:您想从一个电话号码创建一个唯一的字符串,该字符串 1)在所有这些字符串中是唯一的,并且 2)如果为相同的电话号码重新创建将是相同的?
  • @devnull69 是的,你是对的。
  • MD5 不是唯一的,您不太可能为两个不同的电话号码创建双重 MD5 哈希。但也许这对于用例来说已经足够了

标签: javascript string random one-time-password


【解决方案1】:

在 Node Js 中有很多可用的包。您也可以只使用原始代码。

    String.prototype.hashCode = function() {
    var hash = 0, i, chr, len;
    if (this.length === 0) return hash;
    for (i = 0, len = this.length; i < len; i++) {
    chr   = this.charCodeAt(i);
      hash  = ((hash << 5) - hash) + chr;
      hash |= 0; // Convert to 32bit integer
      }
      return hash;
      };

这个基本的散列函数将输出一个散列。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-03
    • 1970-01-01
    • 1970-01-01
    • 2017-08-01
    • 2011-06-30
    • 1970-01-01
    相关资源
    最近更新 更多