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