如何在 JavaScript 中生成随机字符串/字符?


JavaScript 脚本简单、跨平台且轻量级。它广泛用于非浏览器环境,并且以网页构建而闻名。客户端和服务器端开发都可以使用 JavaScript 完成。

JavaScript 具有内置方法,可用于生成随机字符串并根据我们的需要修改文档对象模型 (DOM)random() 函数通过 Math 库访问,它有助于生成随机索引并乘以字符串的长度。它将追加从字符串或字符集中传递的字符。

创建自定义方法以生成随机字符串

可以开发一个唯一的方法来生成随机字符串。这里定义了术语、数字和特殊字符。要创建随机字符串,只需在需要时调用此 JavaScript 函数即可。

示例

在以下示例中,我们使用自定义方法生成随机字符串。

<!DOCTYPE html>
<html>
<script>
   function genRandonString(length) {
      var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()';
      var charLength = chars.length;
      var result = '';
      for ( var i = 0; i < length; i++ ) {
         result += chars.charAt(Math.floor(Math.random() * charLength));
      }
      return result;
   }
   document.write(genRandonString(4));
</script>
</html>

脚本执行时,事件会被触发并在网页浏览器上显示一个由上述脚本中给定字符集中长度为 4 的随机字符串。只要用户运行脚本,它的四个字符串值就会发生变化。

示例

考虑以下示例,我们在此创建了一个随机函数。

<!DOCTYPE html>
<html>
<script>
   const characters ='TUTORIALPOINTABCDEF01234GHIJ56789';
   function generateString(length) {
      let result = ' ';
      const charactersLength = characters.length;
      for ( let i = 0; i < length; i++ ) {
         result += characters.charAt(Math.floor(Math.random() * charactersLength));
      }
      return result;
   }
   document.write(generateString(4));
</script>
</html>

运行上述脚本后,事件将被触发并在网页浏览器上显示一个长度为 4 的随机生成的字符串。只要用户生成脚本,它就会在输出窗口上生成不同的随机字符串

使用 Math.random() 方法生成随机字符串

Math.random() 方法的结果是在 0 和 1 之间的伪随机数。双引号 ("") 中包含的一组字符在 JavaScript 中表示字符串。由于字符串仅仅是字符的集合,因此我们可以使用Math.random() 方法创建随机字符串。

语法

以下是 Math.random() 的语法

Math.random()

示例

考虑以下示例,我们在此使用Math.random() 生成随机字符串

<!DOCTYPE html>
<html>
<script>
   function stringGen(len) {
      var text = "";
      var charset = "abcdefghijklmnopqrstuvwxyz23456789";
      for (var i = 0; i < len; i++)
      text += charset.charAt(Math.floor(Math.random() * charset.length));
      return text;
   }
   document.write(stringGen(2));
</script>
</html>

运行上述脚本后,输出窗口将弹出,在网页上显示生成的长度为 2 的随机字符串。这是因为只要用户运行脚本,事件就会被触发,并且只要用户运行脚本,它就会生成不同的随机字符串。

示例

让我们看看另一个示例,我们在此使用Math.random()

<!DOCTYPE html>
<html>
<script>
   function generateRandomNumber(numberOfCharacters) {
      var randomValues = '';
      var stringValues = 'ABCDEFGHIJKLMNOabcdefghijklmnopqrstuvwxyzPQRSTUVWXYZ';
      var sizeOfCharacter = stringValues.length;
      for (var i = 0; i < numberOfCharacters; i++) {
         randomValues = randomValues+stringValues.charAt(Math.floor(Math.random() * sizeOfCharacter));
      }
      return randomValues;
   }
   document.write(generateRandomNumber(6));
</script>
</html>

当脚本执行时,它将在网页浏览器上生成一个长度为 6 的字符串的输出,因为事件被触发并且只要用户执行脚本就会显示不同的随机字符串。

更新于: 2023年1月18日

5K+ 浏览量

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.