2

さまざまなフィールドと値を持つさまざまなオブジェクトを生成する JavaScript のランダム オブジェクト ジェネレーターが必要です。そのようなツールを見つけることができるアイデアはありますか?

さまざまな複雑さを持つランダム オブジェクトを生成する必要があります。私の目標は、JSON を使用してこれらのオブジェクトをシリアル化し、アプリケーションの http API をファズ テストすることです。

4

2 に答える 2

8
function createRandomObj(fieldCount, allowNested)
{
    var generatedObj = {};

    for(var i = 0; i < fieldCount; i++) {
        var generatedObjField;

        switch(randomInt(allowNested ? 6 : 5)) {

            case 0:
            generatedObjField = randomInt(1000);
            break;

            case 1:
            generatedObjField = Math.random();
            break;

            case 2:
            generatedObjField = Math.random() < 0.5 ? true : false;
            break;

            case 3:
            generatedObjField = randomString(randomInt(4) + 4);
            break;

            case 4:
            generatedObjField = null;
            break;

            case 5:
            generatedObjField = createRandomObj(fieldCount, allowNested);
            break;
        }
        generatedObj[randomString(8)] = generatedObjField;
    }
    return generatedObj;
}

// helper functions

function randomInt(rightBound)
{
    return Math.floor(Math.random() * rightBound);
}

function randomString(size)
{
    var alphaChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    var generatedString = '';
    for(var i = 0; i < size; i++) {
        generatedString += alphaChars[randomInt(alphaChars.length)];
    }

    return generatedString;
}

Xパラメータを使用して、すべて整数、浮動小数点、文字列、ブール値、またはnull値を持つobjを作成します。
私はちょうどそれを作りました:B

于 2010-03-14T21:59:21.977 に答える