首页 > 技术文章 > [JavaScript] 随机生成字符串(数字+符号+字母)

Himpq 2018-12-19 17:40 原文

document.write(randomString(10,false));
//输出AcC36haBM4

 

 1 function randomString(length,addSymbol){
 2  str='1234567890ABCDEFGHIGKLMNOPQRSTUVWSYZabcdefghijklmnopqrstuvwsyz';
 3  symbol='-/:;()$&@.,?!_\|~<>€£¥•[]{}#%^*+=';
 4  txt = '';
 5  if(addSymbol) str = str+symbol;
 6  if(isNaN(length)) return false;
 7  for(i = 0; i < length; i++){
 8   random = parseInt(Math.random()*(str.length+1),10);
 9   txt += str.split("")[random];
10  }
11  return txt;
12 }

步骤解析:

定义变量str为字符串0-9,a-z,A-Z

定义变量symbol为字符串,一些符号

定义变量txt为空字符串

如果选择添加符号,变量str等于原来的str加上sysmbol

如果变量length不是数字,停止执行代码并且返回false

循环 变量1为0 如果i小于length 变量i+1

定义变量random为随机数(0-str的长度)

定于变量txt为原来的txt加上str分割后的随机一个值

返回字符串txt

 

推荐阅读