JavaScript 生成随机字符串/字符
JavaScript的脚本是简单的,跨平台的,而且是轻量级的。它被广泛用于非浏览器的情况下,并且在网页建设中很有名。客户端和服务器端的开发都可以用JavaScript完成。
JavaScript有内置的方法,可以用来生成随机字符串,并根据我们的需要修改文档对象模型(DOM)。将通过数学库访问random()*函数,该函数有助于生成随机索引和与字符串长度的倍数。它将从字符串或字符集中追加传递的字符。
创建一个自定义方法来生成随机字符串
可以开发一种独特的方法来产生随机字符串。在这里,术语、数字和特殊字符被定义。要创建一个随机字符串,只需随时调用这个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>
当script被执行时,事件被触发并在网络浏览器上显示一个由上述脚本中给定的字符集中的长度为4的随机字符串。只要用户运行script,它的四个string值就会改变。
示例
考虑下面的例子,我们正在创建一个随机函数。
<!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()方法生成随机字符串
0和1之间的伪随机数是Math.random()方法的结果。在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的字符串组成的输出,因为该事件被触发,只要用户执行该脚本,就会显示不同的随机字符串。