我希望在我的应用程序中以/[0-9]{32}/
的形式包含GUID,因此它可以具有12131415...
或1020304010101010101...
,每个长度恰好是32个字符。
我希望它均匀分布在整个场景中。我的意思是我不希望ID以此顺序使用:
10000000000000000000000000000000
10000000000000000000000000000001
10000000000000000000000000000002
10000000000000000000000000000003
...
我希望它具有随机性:
91837183748159173751758138571830
18281849104849293849185918918905
...
我正在考虑的方法是先生成所有数字,然后对数组进行混排。但这不适用于像我在这里这样的大字符串集,它将耗尽内存。
所以我不确定该怎么做。
我正在Node.js中执行此操作,并将使用Mongoose将每个GUID作为记录保存为GUID
模式/模型,并将其作为具有属性/属性value
的属性/属性0-1000000000000
到数据库中
似乎最好的选择是随机生成一个字符串,并在再次尝试之前先检查它是否唯一。但是我之前已经尝试过这种方法,并且看起来像指数变大了。
因此,我想知道生成这样的大量数字的通用方法是什么,以便您可以随意随机抽取一个 。我目前只需要其中的1万亿个,但我希望它不是0-99999999999999999999999999999999
,而是var viewControllerPreviewing : UIViewControllerPreviewing? = nil
中的1万亿,看起来似乎是均匀分布的。
在我特定的Node.js / JavaScript / Mongoose情况下,或者通常只是在伪代码或任何程序语言中,思考如何做到这一点。