Maison > interface Web > js tutoriel > le corps du texte

Exemple d'écriture à l'aide d'un objet de commande au lieu des compétences switch Statement_Javascript

WBOY
Libérer: 2016-05-16 16:12:10
original
1450 Les gens l'ont consulté

Quelqu'un a dit un jour qu'un très bon programme n'avait pas de if..else. Bien sûr, switch n'est pas aussi bon que if..else. L'utilisation de switch est interdite dans la spécification JS.

L'objet commande résout parfaitement ce problème.

Citation d'un blog étranger :

JavaScript a de bonnes instructions de flux de contrôle, qui sont souvent placées entre accolades. Il existe une exception : l'instruction switch … case. La chose étrange à propos de switch ... case est que vous devez ajouter le mot-clé break à la fin de chaque case pour empêcher le contrôle de flux de passer à l'instruction case suivante. Le parcours fait référence à la méthode d'exécution de plusieurs cas. Lorsque la rupture attendue n'est pas rencontrée, le contrôle est automatiquement transféré au cas suivant. Cependant, tout comme les points-virgules et les accolades, vous pouvez par inadvertance oublier d'écrire break. Lorsque cela se produit, le dépannage ultérieur sera plus pénible car l'instruction elle-même est correcte. Par conséquent, c'est une bonne pratique d'écrire case... break par paires.
Nous disons généralement que JavaScript possède des littéraux d'objet élégants et des fonctions de niveau supérieur, qui rendent les requêtes de méthodes spécifiques très simples. Les objets créés pour les requêtes de méthode sont appelés objets d'action ou objets de commande et sont utilisés dans de nombreux modèles de conception de logiciels, y compris le modèle de commande puissant et utile.

Exemple :

Copier le code Le code est le suivant :

// changer de méthode
Fonction testSwitch(nom) {
changer (nom) {
cas '1' :
                    return 'hack' ;
                 pause ;
cas '2' :
                     return 'slash' ;
                 pause ;
cas '3' :
                    return 'run' ;
                 pause ;
                 par défaut :
                       return false ;
                 pause ;
>
>
//Utiliser l'objet de commande
Fonction testFn(nom) {
      noms de variables = {
              '1' : fonction() {
                    return 'hack' ;
            },
              '2' : fonction() {
                     return 'slash' ;
            },
              '3' : fonction() {
                    return 'run' ;
            }
        };
Si (type de noms[nom] !== 'fonction') {
              return false ;
>
          renvoie les noms[nom]();
>
// Résultats des tests
var résultat1 = testSwitch('1');
var résultat2 = testFn('2');
console.info(result1, result2);
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal