ifelse vs. switch

Benchmark created by henry on


Test runner

Ready to run.

Testing in
TestOps/sec
ifelse
var random = 20,
success = 0;

if (random == 1)
{
success = 0;
}
else if (random == 2)
{
success = 0;
}
else if (random == 3)
{
success = 0;
}
else if (random == 4)
{
success = 0;
}
else if (random == 5)
{
success = 0;
}
else if (random == 6)
{
success = 0;
}
else if (random == 7)
{
success = 0;
}
else if (random == 8)
{
success = 0;
}
else if (random == 9)
{
success = 0;
}
else if (random == 10)
{
success = 0;
}
else if (random == 11)
{
success = 0;
}
else if (random == 12)
{
success = 0;
}
else if (random == 13)
{
success = 0;
}
else if (random == 14)
{
success = 0;
}
else if (random == 15)
{
success = 0;
}
else if (random == 16)
{
success = 0;
}
else if (random == 17)
{
success = 0;
}
else if (random == 18)
{
success = 0;
}
else if (random == 19)
{
success = 0;
}
else if (random == 20)
{
success = 1;
}

alert(success);
ready
switch
var random = 20,
success = 0;

switch (random)
{
        case 1:
                success = 0;
                break;
        case 2:
                success = 0;
                break;
        case 3:
                success = 0;
                break;
        case 4:
                success = 0;
                break;
        case 5:
                success = 0;
                break;
        case 6:
                success = 0;
                break;
        case 7:
                success = 0;
                break;
        case 8:
                success = 0;
                break;
        case 9:
                success = 0;
                break;
        case 10:
                success = 0;
                break;
        case 11:
                success = 0;
                break;
        case 12:
                success = 0;
                break;
        case 13:
                success = 0;
                break;
        case 14:
                success = 0;
                break;
        case 15:
                success = 0;
                break;
        case 16:
                success = 0;
                break;
        case 17:
                success = 0;
                break;
        case 18:
                success = 0;
                break;
        case 19:
                success = 0;
                break;
        case 20:
                success = 1;
                break;
}

alert(success);
ready
switch lite
var random = 20,
success = 0;

switch (random)
{
        case 1:
        case 2:
        case 3:
        case 4:
        case 5:
        case 6:
        case 7:
        case 8:
        case 9:
        case 10:
        case 11:
        case 12:
        case 13:
        case 14:
        case 15:
        case 16:
        case 17:
        case 18:
        case 19:
                success = 0;
                break;
        case 20:
                success = 1;
                break;
}

alert(success);
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.

  • Revision 1: published by henry on