Visualizzazione risultati 1 fino 5 di 5

Discussione: Il codice non trova il giorno

  1. #1
    Guest

    Predefinito Il codice non trova il giorno

    Questo codice funziona solo se metto il mese d'inizio diverso da gennaio, mentre invece dovrebbe attivarsi dal 1 al 3 gennaio, eppure mi sembra a posto, quel >=1 parla chiaro

    Codice:
    // Dal 1 al 3 gennaio
    function nuovoAnno(){  
    var calendario = new Date();
    var giorno = calendario.getDate();
    var mese = calendario.getMonth();
    var year = calendario.getYear();
    var nodate = 1;
    if (year < 1000) year += 1900;
    // Gennaio=0	
    if (((giorno >=1) && (mese==0)) || ((giorno <=3) && (mese==0))){
    document.write("Happy " + year); var nodate = 0;
    }
     }

  2. #2
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito

    Per fare quello che vuoi te, non deve essere vera la prima o la seconda condizione, ma tutte e due, sostituisce l'unico or condizionare, all'interno della if, con un and condizionare ( && ).

    P.S.: Provato, e cosi fa quello che esattamente vuoi te.

    Sevenjeak
    Software developer and much more

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da sevenjeak Visualizza messaggio
    Per fare quello che vuoi te, non deve essere vera la prima o la seconda condizione, ma tutte e due, sostituisce l'unico or condizionare, all'interno della if, con un and condizionare ( && ).

    P.S.: Provato, e cosi fa quello che esattamente vuoi te.
    Ho messo così ma non va

    Codice:
    ... 
    if (((giorno >=1) && (mese==0)) && ((giorno <=3) && (mese==0)))
    ...
    Ultima modifica di photoman : 11-07-2012 alle ore 11.40.11

  4. #4
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito

    Non so che dirti, a me, il codice, sia prima che ora, funziona perfettamente, modificato in questo modo:

    Codice HTML:
    function nuovoAnno(){  
       var calendario = new Date();
       var giorno = calendario.getDate();
       var mese = calendario.getMonth();
       var year = calendario.getYear();
       var nodate = 1;
       if (year < 1000) year += 1900;
       // Gennaio=0	
       
       if (((giorno >=1) && (mese==0)) && ((giorno <=3) && (mese==0))){
          document.write("Happy " + year); var nodate = 0;
       }
    }
    Non so, forse è la stessa cosa, ma nella condizione if c'è una ripetizione, ovvero mese==0, non so se forse è quello il problema, ma, oltre a quello io la semplificherei in questo modo:

    Codice HTML:
    if ((giorno >= 1 && giorno <= 3) && mese == 0)
    Ultima modifica di sevenjeak : 11-07-2012 alle ore 12.06.37

    Sevenjeak
    Software developer and much more

  5. #5
    Guest

    Predefinito

    Avevi dimenticato una parentesi, così sembra funzionare:

    Codice:
    // Dal 1 al 3 gennaio
    function nuovoAnno(){  
    var calendario = new Date();
    var giorno = calendario.getDate();
    var mese = calendario.getMonth();
    var year = calendario.getYear();
    var nodate = 1;
    if (year < 1000) year += 1900;
    // Gennaio=0	
    if ((giorno >= 1 && giorno <= 3) && (mese == 0)){
    document.write("Happy " + year); var nodate = 0;
    }
     }

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •