Que'est ce qui cloche avec ce switch??

Résolu/Fermé
salmasyrine Messages postés 29 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 21 février 2008 - 7 févr. 2008 à 17:47
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 7 févr. 2008 à 18:19
Ce switch est javascript il me semble tout a fait juste mais ceci n'empeche pas le fait qu'il ne marche pas...

else
{
switch(parseInt(dtj.getMonth())+1)
{
case (1): if(bissext(dtj))
{
dtj.setDate(29);
dtj.setMonth((dtj.getMonth())+1);
}
else
{
dtj.setDate(28);
dtj.setMonth((dtj.getMonth())+1);
}

i++;
break;

case (2) :
case (4) :
case (6) :
case (7) :
case (9) :
case (11): if (dtj.getDate()==30)
{
dtj.setDate(31);
dtj.setMonth((dtj.getMonth())+1);
}
else
{
if (dtj.getDate()==29)
dtj.setMonth((dtj.getMonth())+1);
}
i++;
break;

case (3) :
case (5) :
case (8) :
case (10) :
case (12) : if (dtj.getDate()==31)
{
dtj.setDate(30);
dtj.setMonth((dtj.getMonth())+1);
}
else
{
if ((dtj.getDate()==29)||(dtj.getDate()==30))
dtj.setMonth((dtj.getMonth())+1);
}

i++;
break;
default: alert("Erreur");

}//fin switch
A voir également:

5 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 843
7 févr. 2008 à 18:01
Salut,

Tu dis qu'il ne marche pas. Ok. Mais qu'est-ce qui ne marche pas ? Explique-nous ce qui se passe. Message d'erreur ? ou autre.
Ton code est sensé faire quoi ?

Sinon, dans ton switch, il y a des else qui trainent qui me paraissent bizarre. Tu peux pas avoir un if et un break qui se chevauchent.

Cordialement
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
7 févr. 2008 à 18:03
Re-bonjour salmasyrine,

Essayes d eposter ton code dans l'intégralité, et de détailler ça fonction STP.
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
7 févr. 2008 à 18:07
Bonjour,

C'est pas parce que tu n'as pas d'instruction dans les case (1): qu'il ne faut pas le break;
Ensuite la syntaxe de case c'est:


case "1" :


Cherche sur le net , il y a des fonctions beaucoup plus simples pour trouver les mois 30/31 j et 28/29 février
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
7 févr. 2008 à 18:14
Ok, je prends ton problème par msn, valide ce post en tant que résolu, ça évite aux autres membres de perdre leurs temps
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 843
7 févr. 2008 à 18:19
Salut Alain

C'est pas parce que tu n'as pas d'instruction dans les case (1): qu'il ne faut pas le break;
Un case ne se break par forcément. Ça dépend de ce que l'on souhaite faire. Ici, en l'occurrence, il ne manque pas de break, vu sa fonctionnalité.

Par contre, ce sont les mois 1,3,5,7,8,10,12 d'une part et 4,6,9,11 d'autre part qui ont le même nombre de jours.

Cordialement
0