2017-02-06 11 views
-1

Je suis nouveau sur JavaScript. J'ai quatre nombres entrés via des invites. Parmi ces quatre chiffres, je veux imprimer la valeur maximale et imprimer la valeur minimale. J'ai une fonction pour calculer la valeur maximale et une fonction pour calculer la valeur minimale. La seule chose que je peux imprimer est le nombre maximum. La fonction pour le nombre minimum ne semble pas fonctionner après que la fonction pour le nombre maximum est terminée. Toute clarification sur les raisons pour lesquelles cela ne fonctionne pas serait appréciée.JavaScript - Seule la première des deux fonctions s'exécute

C'est ce que j'ai actuellement:

window.onload = max4; 
 

 
var first_number = prompt("Please enter your first number", ""); 
 
var second_number = prompt("Please enter your second number", ""); 
 
var third_number = prompt("Please enter your third number", ""); 
 
var fourth_number = prompt("Please enter your fourth number", ""); 
 

 
function max4() { 
 
    document.getElementById("max_result"); 
 
    max_result.innerHTML = "The larger of the four numbers you entered is: " + Math.max(first_number, second_number, third_number, fourth_number); 
 
} 
 

 
function min4() { 
 
    document.getElementById("min_result"); 
 
    min_result.innerHTML = "The lowest of the four numbers you entered is: " + Math.min(first_number, second_number, third_number, fourth_number); 
 
}
<!doctype html> 
 
<html lang="en"> 
 

 
<head> 
 
    <meta charset="utf-8" /> 
 
    <title>JavaScript Test Project</title> 
 
    <script src="min_max_numbers.js"></script> 
 
</head> 
 

 
<body> 
 
    <h3>Largest and Smallest</h3> 
 
    <h5 id="max_result"></h5> 
 
    <h5 id="min_result"></h5> 
 
</body> 
 

 
</html>

Merci

+0

La réutilisation des ID ('max_result') n'est pas valide. – Xufox

+0

Il ne va pas exécuter le 'min4' puisque dans le chargement de la fenêtre vous avez seulement appelé la fonction' max4' mais vous n'avez pas référé à 'min4' pour exécuter – Thennarasan

+0

max4 est appelée. min4 ne l'est pas. –

Répondre

0

Vous n'êtes jamais invoquez la fonction min4, vous pouvez l'appeler après les invites:

var first_number = prompt("Please enter your first number", ""); 
var second_number = prompt("Please enter your second number", ""); 
var third_number = prompt("Please enter your third number", ""); 
var fourth_number = prompt("Please enter your fourth number", ""); 

max4(); //invoke max4 function 
min4(); //invoke min4 function 

function max4() { 
    var max_result = document.getElementById("max_result"); 
    max_result.innerHTML = "The larger of the four numbers you entered is: " + Math.max(first_number, second_number, third_number, fourth_number); 
} 

function min4() { 
    var min_result = document.getElementById("min_result"); 
    min_result.innerHTML = "The lowest of the four numbers you entered is: " + Math.min(first_number, second_number, third_number, fourth_number); 
} 
+0

en note - vous ne définissez jamais 'max_result' ou' min_result' – hackerrdave

+1

le DOM n'est pas encore chargé donc il ne recevra pas l'ID de toute façon. Je doute que cette approche fonctionne @hackerrdave –

0

Bonjour vous devez appeler les deux fonctions dans window.onload

Ceci est fait comme suit. Refactorisez votre fichier JS comme suit

window.onload = func1; 

var first_number = prompt("Please enter your first number", ""); 
var second_number = prompt("Please enter your second number", ""); 
var third_number = prompt("Please enter your third number", ""); 
var fourth_number = prompt("Please enter your fourth number", ""); 

function max4(){ 
    document.getElementById("max_result").innerHTML = "The larger of the four numbers you entered is: " + Math.max(first_number, second_number, third_number, fourth_number); 
} 

function min4(){ 
    document.getElementById("min_result").innerHTML = "The lowest of the four numbers you entered is: " + Math.min(first_number, second_number, third_number, fourth_number); 
} 

function func1() { 
    max4(); 
    min4(); 
}