JS生成随机字符串的方法

时间:2023年12月24日

/

来源:网络

/

编辑:佚名

JS生成随机字符串的函数
    function gethostname(length, passwordArray) {
                length = length || 6;
                // 密码串----默认 大写字母 小写字母 数字
                passwordArray = passwordArray || ['ABCDEFGHIJKLMNOPQRSTUVWXYZ', '1234567890'];
                var password = '';
                // 随机生成开始字符串
                var startIndex = parseInt(Math.random() * length);
                var randIndex = [];
                for (var i = 0; i < length; i++) {
                    // 创建数组,用于取随机位置  [0,1,2,3,4,5,....]
                    randIndex.push(i);
                }
                for (var i = 0; i < length; i++) {
                    // 根据随机数组生成随机位置
                    var r = parseInt(Math.random() * randIndex.length);
                    var num = randIndex[r] + startIndex;
                    // 根据随机值取余数
                    var randRemainder = num % passwordArray.length;
                    // 当前密码串【大写字母,小写字母,数字等】
                    var currentPassword = passwordArray[randRemainder];
                    // 根据当前密码串长度取随机数
                    var index = parseInt(Math.random() * currentPassword.length);
                    // 获取随机字符串
                    var str = currentPassword.substr(index, 1);
                    // 删除随机数组中已经使用的值
                    randIndex.splice(r, 1);
                    password += str;
                }
                return password;
            }
            function getPassWord(length, passwordArray) {
                length = length || 6;
                // 密码串----默认 大写字母 小写字母 数字
                passwordArray = passwordArray || ['ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz', '1234567890'];
                var password = '';
                // 随机生成开始字符串
                var startIndex = parseInt(Math.random() * length);
                var randIndex = [];
                for (var i = 0; i < length; i++) {
                    // 创建数组,用于取随机位置  [0,1,2,3,4,5,....]
                    randIndex.push(i);
                }
                for (var i = 0; i < length; i++) {
                    // 根据随机数组生成随机位置
                    var r = parseInt(Math.random() * randIndex.length);
                    var num = randIndex[r] + startIndex;
                    // 根据随机值取余数
                    var randRemainder = num % passwordArray.length;
                    // 当前密码串【大写字母,小写字母,数字等】
                    var currentPassword = passwordArray[randRemainder];
                    // 根据当前密码串长度取随机数
                    var index = parseInt(Math.random() * currentPassword.length);
                    // 获取随机字符串
                    var str = currentPassword.substr(index, 1);
                    // 删除随机数组中已经使用的值
                    randIndex.splice(r, 1);
                    password += str;
                }
                return password;
            }
调用方法
点击复制代码 JavaScript
$(function () {
    $('input[name=hostname]')
    .val('VM-' + getPassWord(8))
    .attr('readonly', 'readonly');
    })
猜你需要

豫ICP备2021026617号-1  豫公网安备:41172602000185   Copyright © 2021-2028 www.78moban.com/ All Rights Reserved

本站作品均来自互联网,转载目的在于传递更多信息,并不代表本站赞同其观点和对其真实性负责。如有侵犯您的版权,请联系 1565229909#qq.com(把#改成@),我们将立即处理。