0

基本的に、次の可能な組み合わせで出力を生成できるランダマイザーを構築したいと考えています。

.
. .
. . .
_
_ _
_ _ _
. _
_ .
. . _
_ . .
. _ _
_ _ .
_ . _
. _ .

最後に、文字 A と B を先頭にランダムに追加します。

例えば:

A . _
B _ _
A . . _
A _ .
B . _ _
A .

etc.

JavaScript でこれを達成する方法のアイデアはありますか?

4

2 に答える 2

2
var a = [
    ".",
    ". .",
    ". . .",
    "_",
    "_ _",
    "_ _ _",
    ". _",
    "_ .",
    ". . _",
    "_ . .",
    ". _ _",
    "_ _ .",
    "_ . _",
    ". _ ."
    ],

    b = ["A ", "B "];



    function getRandom() {
        return b[Math.random()*b.length|0] + a[Math.random()*a.length|0];
    }

    getRandom(); //"A ."
    getRandom(); //"A _ _ _"
    getRandom(); //"B . _ _"

ループあり:

var l = 20;
while(l--) console.log( getRandom() );
于 2012-06-20T14:40:24.613 に答える
2

ここに別の方法があります:http://jsfiddle.net/8AHaw/

function makeid() {
    var text = "";
    var possibleChars = "._";
    var possibleLetters = "AB";

    text += possibleLetters.charAt(Math.floor(Math.random() * possibleLetters.length));
    for( var i=0; i < Math.floor(Math.random() * 3)+1; i++ )
        text += " " + possibleChars.charAt(Math.floor(Math.random() * possibleChars.length));

    return text;
}

for (var i=0; i < 20; i++)
    $("body").append("<div>" + makeid() + "</div>");

JavaScript でランダムな文字列/文字を生成するから適応

于 2012-06-20T14:42:28.153 に答える