Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Problema metodo applicato ad oggetti

    Ho creato 3 oggetti appartenenti alla stessa classe.
    Se clicco il pulsante "visualizza" vedo correttamente i dati degli oggetti.
    Se premo "massimo" vorrei visualizzare l'età massima ..
    il problema è che non so come applicare il metodo "max" ai 3 oggetti.

    Come andrebbe scritto?

    Questo è il codice:
    codice HTML:
    <html>
    <head>
    <script type="text/javascript">
    var persona=new Persona("Rossi",100,"mario@libero.it");
    var personadue=new Persona("XYZ",60,"xyz@libero.it");
    var personatre=new Persona("Verdi",70,"verdi@libero.it");
    
    function Persona(cognome,eta,mail)
    {this.cognome=cognome;  
    this.eta=eta;  
    this.mail=mail;  
    this.visualizzacognome=function()  
    {    
      var msg="";        
    msg+="Cognome"+" "+this.cognome+"\nEtà"+" "+this.eta+""+"Mail:"+""+this.mail;       
      return msg;  
    }    
    this.max=function()  
    {    
     var msg="";    
    var max=0;   
     if (max<this.eta)   
     max=this.eta;   
     msg+="Il massimo è:"+" "+max;    
    return(msg);     
       }
    }
    function getMsg()
    {         
        document.getElementById('myDIV').innerHTML = persona.visualizzacognome()+"<br>"+personadue.visualizzacognome()+"<br>"+personatre.visualizzacognome();
    }
    function getMsgMax()
    {        
     document.getElementById('myDIV').innerHTML = persona.max()+"<br>"+personadue.max()+"<br>"+personatre.max();
    }
    </script>
    <meta charset="ISO-8859-1">
    <title>Insert title here</title>
    </head><body>
    <div id="myDIV"></div>
    <input type="button" name="btn" value="Visualizza" onclick="getMsg();">
    <input type="button" name="btn" value="Massimo" onclick="getMsgMax();">
    </body>
    </html>

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    l'età massima tra le tre persone? quindi nel tuo caso 100?

  3. #3
    Quote Originariamente inviata da Vindav Visualizza il messaggio
    l'età massima tra le tre persone? quindi nel tuo caso 100?
    Esatto

  4. #4
    Non ha senso che un oggetto Persona abbia un metodo max che ritorna il massimo tra le età di tre persone.

    Crea una funzione max() che prende in ingresso un numero arbitrario di persone e ritorna quella con età massima.
    max

    Silence is better than bullshit.
    @mmarcon
    jHERE, Maps made easy

  5. #5
    Quote Originariamente inviata da mxa Visualizza il messaggio
    Non ha senso che un oggetto Persona abbia un metodo max che ritorna il massimo tra le età di tre persone.

    Crea una funzione max() che prende in ingresso un numero arbitrario di persone e ritorna quella con età massima.
    Calcolerebbe il numero massimo di persone?Me lo spieghi con il codice?

  6. #6
    Quote Originariamente inviata da eagle87 Visualizza il messaggio
    Calcolerebbe il numero massimo di persone?Me lo spieghi con il codice?

    codice:
    function max(){
      var i, maxEta = 0;
      for(i = arguments.length - 1; i >= 0; i--){
        if(arguments[i].eta > maxEta) {
          maxEta = arguments[i].eta;
        }
      }
      return maxEta;
    }
    
    
    max(persona1, persona2, persona3, personaN);
    ho visto che non it interessava ritornare la persona con età massima ma solo l'età massima delle persone. Questo è quanto.
    Ultima modifica di mxa; 29-01-2015 a 08:41
    max

    Silence is better than bullshit.
    @mmarcon
    jHERE, Maps made easy

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.