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 に答える