基于几个参数的唯一标识符的性能生成

时间:2018-10-25 18:16:10

标签: javascript string performance unique-key garbage

我想为objects生成唯一标识符,以便将其存储在Map中。

我当前用于生成标识符的对象字段是:time xy,它们都是正整数。

我无法将对象直接存储为key的{​​{1}},因为对象也是通过网络发送的,因此它们的引用也会更改。

当前,为了生成标识符,我创建了一个像这样的字符串:

Map

目前它已经足够好了,但是我担心会产生大量垃圾(每当我需要获取对象的标识符时,就会使用一个串联的字符串)。

数字可能非常大,const uid = `${time}_${x}_${y}`; ,但是我考虑过使用数字作为ID,例如:0 <= t,x,y <= 200000,因此time * 10^18 + x ^ 10^y + y的每个值都有6位数字(以10为基数的数字):uid,但此数字大于ttttttxxxxxxyyyyyy。另外,我不知道执行所有这些乘法是否比生成字符串更昂贵,但是主要的问题还是垃圾。

如何根据三个不同的值唯一地生成一个标识符?

0 个答案:

没有答案