【发布时间】:2018-06-07 22:27:40
【问题描述】:
我有一个非常简单的 javascript 程序,它涉及从给定的一组允许的字符生成随机字符串。
使用randexp.js 从正则表达式生成随机字符串似乎是最合适的方法。但是,由于允许的字符集是一个非常简单的字符集(基本上都是英文字母表中的大写字符和所有数字),我想知道加载整个库是否对于这个目的有点矫枉过正。相反,我正在做类似以下的事情:
const chars = ["A", "B", "C", "D", ...];
let random = () => { return chars[Math.floor(Math.random() * chars.length)] };
这是否真的有什么不好的地方(除了有点笨重和笨拙)或者在这种特定情况下可以吗?从一组允许的字符生成随机字符串的最佳方法是什么?
【问题讨论】:
-
取决于您使用它的目的:
Math.random()不适合任何与安全或机密相关的事物。 -
@zerkms 我应该指出我的程序与安全无关。感谢您的观察!
-
以防万一有人想查看实际代码以及生成这些字符串的目的,可以访问here
标签: javascript string random