How to show the youngest age between 3 ages with Javascript?

8

How can I show the youngest age between 3 ages in javascript?

<html>
   <head>
      <title> </title>
        <script type="text/javascript">

        var idade1, idade2, idade3 ;

        idade1 = prompt("Digite a primeira idade");
        idade1 = eval(idade1) ;

        idade2 = prompt("Digite a segunda idade");
        idade2 = eval(idade2) ;

        idade3 = prompt("Digite a terceira idade");
        idade3 = eval(idade3) ;

        if( idade1 < idade2 || idade1 < idade3 );
        document.write( idade1 );
        } 
        else if ( idade2 < idade1 || idade2 < idade3 );
        document.write( idade2 );
        } 
        else 
        {
        ( idade3 < idade1 || idade3 < idade2 );
        document.write( idade3 );}


       </script>

   </head>
  <body> 
 </body>
</html>
    
asked by anonymous 14.10.2016 / 16:59

2 answers

7

You have some syntax errors and some semantic errors:

When you have if( idade1 < idade2 || idade1 < idade3 ); a { is missing, several times.

When you have || you must have && to ensure that it is mandatory and not optional.

I changed the eval to Number . In this case it would have the same effect, but if you enter the number to put code, eval will run that code and can cause serious security problems. Although I defend the use of eval, in this case it is wrong. You can read more about it here .

If you want to run different code for each age the solution below works. If you want to know only the smallest of all, you can use Math.min() as Cleverson suggested in his response .

suggestion:

 var idade1, idade2, idade3;

 idade1 = prompt("Digite a primeira idade");
 idade1 = Number(idade1);

 idade2 = prompt("Digite a segunda idade");
 idade2 = Number(idade2);

 idade3 = prompt("Digite a terceira idade");
 idade3 = Number(idade3);

 if (idade1 < idade2 && idade1 < idade3) {
     alert(idade1);
 } else if (idade2 < idade1 && idade2 < idade3) {
     alert(idade2);
 } else {
     (idade3 < idade1 && idade3 < idade2);
     alert(idade3);
 }
    
14.10.2016 / 17:08
9

Just adding a detail to the Sergio example, for what you asked instead of comparing via if else pose to use a function of Javascript even Math.min() ou Math.max() minimum and maximum. Here's an example applied to your template:

<script>
     var idade1, idade2, idade3;

     idade1 = prompt("Digite a primeira idade");
     idade1 = Number(idade1);

     idade2 = prompt("Digite a segunda idade");
     idade2 = Number(idade2);

     idade3 = prompt("Digite a terceira idade");
     idade3 = Number(idade3);

    var min = Math.min(idade1, idade2, idade3);
    alert(min);

</script>
    
14.10.2016 / 18:55