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>");

改编自Generate random string/characters in JavaScript

于 2012-06-20T14:42:28.153 回答