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

Un détail sur lequel il est facile de commettre des erreurs lors du jugement de commutation dans les connaissances JavaScript_Basic

WBOY
Libérer: 2016-05-16 16:38:29
original
1344 Les gens l'ont consulté

L'instruction switch est la plus étroitement liée à l'instruction if. C'est également une instruction de contrôle de flux couramment utilisée dans d'autres langages de programmation. Cependant, la correspondance de switch est en mode congruent. fera souvent des erreurs lors de l’écriture de programmes.

Code :

var n = '5';
switch(n){
    case 5:
        alert('执行case分支');
        break;
    default:
        alert('执行default分支');
}
Copier après la connexion

Résultat :

Un détail sur lequel il est facile de commettre des erreurs lors du jugement de commutation dans les connaissances JavaScript_Basic

Beaucoup de gens peuvent penser à tort que le programme ci-dessus prendra la branche case, mais en fin de compte, il prend la branche par défaut. Ne sont-ils pas égaux tous les deux ? Jetons un coup d'œil en utilisant l'instruction if.

Code :

var n = '5';
if(n==5){
    alert('真 分支');
}else{
    alert('假 分支');
}
Copier après la connexion

Résultat :

Un détail sur lequel il est facile de commettre des erreurs lors du jugement de commutation dans les connaissances JavaScript_Basic

Il peut correspondre dans l'instruction if, mais pourquoi ne peut-il pas correspondre dans l'instruction switch ?

Cela est dû au fait que le cas dans l'instruction switch utilise le mode congruent, ce qui équivaut à utiliser trois signes égaux dans if. Réécrivons le code du cas

Code :

var n = '5';
switch(n){
    case '5': // 把原来的 case 5 改写成 case '5'
        alert('执行case分支');
        break;
    default:
        alert('执行default分支');
}
Copier après la connexion

Résultat :

Un détail sur lequel il est facile de commettre des erreurs lors du jugement de commutation dans les connaissances JavaScript_Basic

Après la réécriture, vous pouvez prendre la branche case, tout comme nous utilisons trois signes congruents dans if

Code :

var n = '5';
if(n===5){
    alert('真 分支');
}else{
    alert('假 分支');
}
Copier après la connexion

Résultat :

Un détail sur lequel il est facile de commettre des erreurs lors du jugement de commutation dans les connaissances JavaScript_Basic

Parce que la congruence est utilisée, la chaîne 5 n'est pas égale au nombre 5 et le résultat est une fausse branche.

L'exemple ci-dessus montre que le mode de correspondance congruente est utilisé dans switch, en particulier un problème auquel il faut prêter attention lors de la correspondance de nombres et de chaînes

É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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!