在 JavaScript 中生成随机字母数字(大写、小写和数字)字符串以用作可能唯一标识符的最短方法(在合理范围内)是什么?
原文由 Pavel 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 JavaScript 中生成随机字母数字(大写、小写和数字)字符串以用作可能唯一标识符的最短方法(在合理范围内)是什么?
原文由 Pavel 发布,翻译遵循 CC BY-SA 4.0 许可协议
我刚刚发现这是一个非常好的和优雅的解决方案:
Math.random().toString(36).slice(2)
此实现的注意事项:
Math.random()
,所以输出可能是可预测的,因此不一定是唯一的。原文由 JAR.JAR.beans 发布,翻译遵循 CC BY-SA 4.0 许可协议
10 回答11.2k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
如果您只想允许特定字符,您也可以这样做:
这是一个 jsfiddle 来演示:http: //jsfiddle.net/wSQBx/
另一种方法是使用一个特殊的字符串来告诉函数使用什么类型的字符。你可以这样做:
小提琴:http: //jsfiddle.net/wSQBx/2/
或者,要使用如下所述的 base36 方法,您可以执行以下操作: