【发布时间】:2015-12-14 01:11:28
【问题描述】:
我使用(Math.random()*1e32).toString(36) 作为一个简单的随机字符串生成器。它非常简单,效果很好,可以满足我的需求(用于 id 的时间随机数等)
在 chrome、safari、firefox 和 ie 中,Math.random()*1e32 生成的数字如下:8.357963780872523e+31 :-)
- 在 chrome、safari 和 firefox 中,此类数字被转换为字符串
(8.357963780872523e+31).toString(36)->221fr2y11ebk4cog84wok这正是我想要的。 - 但是在 ie11 中,字符串结果是
6.936gwtrpf69(e+20)。
如何以跨浏览器的方式从8.357963780872523e+31获取相同的字符串221fr2y11ebk4cog84wok?
顺便说一句:我从这个帖子中得到了这个随机字符串的想法:Random alpha-numeric string in JavaScript?
【问题讨论】:
-
.toFixed(20)是什么意思? -
你需要固定数量的字符吗?
-
并非如此。我只是想减少与其他外部随机id生成器发生冲突的可能性(不知道用了什么算法)
标签: javascript