关于html:如何在javascript中获得纯粹唯一的数字

How to get purely unique number in javascript

本问题已经有最佳答案,请猛点这里访问。

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

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

在程序运行期间,是否有一个函数在每次调用时都返回完全唯一的东西,或者我必须实现自己的计数器?


可以创建UUID:

1
2
3
4
5
6
7
8
9
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/