183 votes

Activer les plages d'entiers en JavaScript

Je veux faire quelque chose comme ça

    switch (this.dealer) {
        case 1-4: 
            // Do something.
            break;
        case 5-8: 
            // Do something.
            break;
        case 9-11: 
            // Do something.
            break;
        default:
            break;
    }

Quelle est la bonne syntaxe pour cela ? Est-il possible en JavaScript ?

Donc this.dealer est un entier, et si c'est entre ces valeurs, faites quelque chose.

405voto

Alejandro Martin Points 1861

Voici un autre moyen que j'ai trouvé :

const x = this.dealer;
switch (true) {
    case (x < 5):
        alert("less than five");
        break;
    case (x < 9):
        alert("between 5 and 8");
        break;
    case (x < 12):
        alert("between 9 and 11");
        break;
    default:
        alert("none");
        break;
}

31voto

MarvinLabs Points 13401
    switch(this.dealer) {
        case 1:
        case 2:
        case 3:
        case 4:
            // Do something.
            break;
        case 5:
        case 6:
        case 7:
        case 8:
            // Do something.
            break;
        default:
            break;
    }

Si vous n'aimez pas la succession des cas, optez simplement pour des relevés if/else if/else.

7voto

Kevin Points 3580

Si vous avez besoin de vérifier les plages, vous êtes probablement mieux avec if else if déclarations, comme ainsi :

if (range > 0 && range < 5)
{
    // ..
}
else if (range > 5 && range < 9)
{
    // ..
}
else
{
    // Fall through
}

Un interrupteur pourrait devenir grand sur de plus grandes portées.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X