如何在javascript中获得纯粹唯一的数字

时间:2016-08-11 07:52:46

标签: javascript html

我必须为我创建的某些对象创建唯一键(React key prop需要),其中key可以是任意随机字符串或数字,但每次在程序生命周期中生成时都必须真正唯一。

我尝试使用new Date().getTime()作为键,但遇到了在循环中创建多个对象时为其分配了相同键的问题。

只要程序正在运行,是否有一个函数可以返回每个调用纯粹唯一的函数,或者我是否必须实现自己的计数器?

1 个答案:

答案 0 :(得分:1)

您可以创建UUID:

function guid() {
  function s4() {
    return Math.floor((1 + Math.random()) * 0x10000)
      .toString(16)
      .substring(1);
  }
  return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
    s4() + '-' + s4() + s4() + s4();
}

原始答案:https://stackoverflow.com/a/105074/5109911

替代: https://jsfiddle.net/briguy37/2MVFd/