0

所以今天我有兴趣学习一个随机化每个字母/数字的脚本,例如 0000-0000,每个 0 都通过随机字母或数字随机化。然而,在我之前的帖子中,我询问了如何做到这一点并获得了脚本;我现在遇到的问题是完全理解代码。

jQuery(document).ready(function ($) {

    function randomised(len) {
        return Math.floor(Math.random() * len);
    }

    function randomiseString(str){
        var charSet = "abcdefghijklmnopqrstuvwxyz0123456789";
        var _str = str.replace(/[^-]/g,function(a){
            return charSet[randomised(charSet.length)]
        });
        return _str;
    }

    $('.combination').text(function(i,t){
        return randomiseString(t);
    });

});

这就是代码,这里有一些我想知道的东西:

var _str = str.replace(/[^-]/g,function(a){
    return charSet[randomised(charSet.length)]
});

1)所以这是进行随机化的主要部分。我现在可能有一些愚蠢的想法,但我想知道如何将上面设置的所有字母强制大写。我知道我可以用大写字母替换这些字母,但我想知道如何用代码来做到这一点。另外,如果我理解正确,它会使 charSet 成为一个数组吗?

var _str = str.replace(/[^-]/g,function(a)

2) 为什么函数有 (a) 值?天气我把它留空与否有什么不同吗?

提前致谢!

4

1 回答 1

0

Javascript 根本不要求传递给函数的参数与函数预期的参数相匹配。这意味着如果您不需要它们,您可以安全地省略任何函数的参数,并且在上面的代码中,而不是

function (a) {
    // code that doesn't use a
}

你可以使用

function () {
    // ...
}
于 2013-09-21T20:40:01.687 回答