Exercice 4/11

Dans le fichier "script.js" :

  • déclarez la fonction hello avec deux arguments prenom et nom;
  • la fonction doit afficher "Bonjour prenom nom" avec alert() (il faudra concaténer);
  • cliquez sur "Soumettre ma réponse".

Leçon 4/11

Si une fonction est en partie indépendante du reste du code, il serait quand même pratique de lui donner des informations dont elle pourrait avoir besoin pour exécuter son propre code.

Les arguments

Argument, ou paramètre, ou encore valeur, autant de mots pour désigner la même chose : une information passée en entrée à la fonction pour qu'elle s'en serve dans son code.

alert() est une fonction qui prend en paramètre ce qu'on souhaite qu'elle affiche.

La syntaxe d'une fonction avec un argument

function maFonction (arg) {
    // Code a exécuter
}

Ici on a déclaré une fonction avec un paramètre en plus arg. Il est possible d'en indiquer plusieurs :

function maFonction (arg1,arg2,arg3) {
    // Code a exécuter
}

Exemple :

// on déclare la fonction
function maFonction (prenom) {
    alert('Bonjour '+prenom);
}
// on exécute la fonction
maFonction("Jean");

On indique à la fonction une chaîne de caractère en paramètre d'entrée.
La fonction va comprendre que pour elle prenom = Jean. Elle va donc se servir de ce paramètre comme une variable interne.

Commentaires les mieux notés

  • tjmasiee-86

    Bonjour, le code a l'air de fonctionner mais j'ai un message d'erreur (pas assez de concatenation) pouvez-vous m'aider svp?

  • CC.013

    c'est triste me reste que celui la pour un 100% global mois ZERO

  • y.redjah

    voici mon code j'ai bien compris que l'exercice beug mais je voulais savoir si il était bien écrit function hello (prenom,nom) { alert("hello" + ("prenom","nom")); } hello("Yannis","Redjah");

  • daminoweb

    ok. Globalement, je trouve que la correction en général est trop stricte, notamment sur les règles typographiques, espaces, ... ce qui qui fait que l'on perd parfois du temps à vouloir débugger un code qui en vrai reste valable.

90 Commentaires

  • y.redjah

    y.redjah

    voici mon code j'ai bien compris que l'exercice beug mais je voulais savoir si il était bien écrit function hello (prenom,nom) { alert("hello" + ("prenom","nom")); } hello("Yannis","Redjah");

    le 27/04/2017 à 21h24

  • daminoweb

    daminoweb

    ok. Globalement, je trouve que la correction en général est trop stricte, notamment sur les règles typographiques, espaces, ... ce qui qui fait que l'on perd parfois du temps à vouloir débugger un code qui en vrai reste valable.

    le 30/11/2016 à 14h00

  • mram

    mram Administrateur

    Merci pour les typos. Attention dans votre code vous avez déclaré la fonction, mais il faut l'exécuter avec des arguments (un nom et un prénom).

    le 04/09/2016 à 13h42

  • pascal-ds

    pascal-ds

    bonjour, j'ai le même message : "Avez-vous correctement concaténé les 2 arguments dans alert() ?"... Le script ne renvoie pas prenom et nom mais undefined undefined... comme aucune valeur n'a été entrée pour les deux arguments, je suppose que c'est normal ? (pssst ! : "une information passer" => passée et "Code a exécuté" => à exécuter)

    le 02/09/2016 à 09h57

  • fumey.claire

    fumey.claire

    Bonjour, pouvez-vous m'aider ? merci !

    le 21/12/2016 à 07h47

  • mram

    mram Administrateur

    Votre code est correct, comme j'ai dit plus haut, cet exercice va être revu.

    le 16/09/2016 à 14h49

  • pascal-ds

    pascal-ds

    oops, j'ai oublié cette ligne... sauf qu'il me demande toujours si j'ai bien concaténé les arguments. J'ai essayé sans espace, sans le +" ", mais rien à faire.

    le 05/09/2016 à 08h39

  • ea_kouassi

    ea_kouassi

    Bonjour @mram pourrais-tu m'aider ? /* function hello (prenom,nom) { alert('Bonjour '+ prenom +' '+ nom); } hello("edwige","kouassi"); */ c'est quoi mon erreur ?

    le 03/11/2016 à 12h47

  • mram

    mram Administrateur

    C'est vrai, il est prévu de mettre des "notices" et non des erreurs bloquantes quand il s'agit que de syntaxe mais que le code est fonctionnel.

    le 30/11/2016 à 16h52

  • mram

    mram Administrateur

    Ligne 3 il suffit de concaténer le texte et les variables : vous avez bien commencé (avec le +) il faut continuer pour la suite, pas besoin de parenthèses en plus et vos variables sont dans des guillemets donc pour Javascript c'est juste du texte ...

    le 28/04/2017 à 15h51

  • mram

    mram Administrateur

    Oui cet exercice va être revu, votre code est correct et il ne devrait pas y avoir d'erreur.

    le 05/09/2016 à 13h49

  • mram

    mram Administrateur

    Après la correction bug pour cet exercice même si le code est juste, donc ne soyez pas surpris après avoir fait les modifications que j'ai indiqué.

    le 28/04/2017 à 15h53

  • y.redjah

    y.redjah

    voici le nouveau code function hello (prenom,nom) { alert("hello" + prenom + nom); } hello(prenom,nom);

    le 28/04/2017 à 16h30

  • mram

    mram Administrateur

    Là vous avez déclaré la fonction, après il faut aussi l'exécuter.

    le 22/12/2016 à 12h51

  • mram

    mram Administrateur

    Bonjour, il n'y a pas d'erreur dans votre code. C'est la correction qui bug.

    le 04/11/2016 à 20h41

  • mram

    mram Administrateur

    Alors ligne 2 : la variable hello n'existe pas, il faut mettre le texte "Hello".

    le 07/06/2017 à 13h43

  • mickael.59300

    mickael.59300

    ou est mon erreur? function hello (prenom,nom) { alert("Bonjour "+prenom+nom); } hello("jean "+"machin ");

    le 04/04/2017 à 09h44

  • mram

    mram Administrateur

    Bonjour, pour la ligne 2, le code idéal serait : alert("Bonjour "+prenom+" "+nom); Par contre, mea culpa, le texte que vous aviez mis à la dernière ligne initialement devrait fonctionner.

    le 04/05/2017 à 12h01

  • maksika

    maksika

    Bonjour, Où est mon erreur dans le code suivant. Merci : function hello (prenom,nom) { alert (" Bonjour" + prenom+""+ nom) } hello (jean,paul) ;

    le 13/03/2017 à 11h32

  • mram

    mram Administrateur

    Ligne 2, entre prenom et nom il faudrait ajouter un espace " ". Et ligne 4, les paramètres d'une fonction sont toujours séparés par une virgule, et non "+".

    le 08/04/2017 à 08h26

  • mram

    mram Administrateur

    Alors, ligne 2 il faut un espace dans les derniers guillemets. Et ligne 4 il faut mettre des guillemets aux prénoms car c'est du texte. Là vous faites appel à des variables qui n'existent pas (jean et paul).

    le 17/03/2017 à 19h17

  • bsmeyers84

    bsmeyers84

    bonjour je viens de faire l'exercice et j'ai le même problème que Willy

    le 25/08/2016 à 17h23

  • yentrang.huynh

    yentrang.huynh

    Bonjour, Y a-t-il toujours un soucis dans la correction? Mon code fonctionne mais je ne peux pas valider l'exercice. Merci

    le 20/03/2017 à 18h15

  • mikl94v

    mikl94v

    Bonsoir, J'ai aussi réussi l'exercice. en tout cas, j'affiche bien le résultat demandé. Pourtant j'ai le même message d'erreur que notre ami willy.julan

    le 17/11/2016 à 22h34

  • patricerameaux

    patricerameaux

    avez-vous correctement concaténé les 2 éléments , etc : où est le problème ?

    le 17/10/2016 à 11h22

  • patricerameaux

    patricerameaux

    avez-vous correctement concaténé les 2 éléments dans alert ? il me semble que oui et le résultat est correct

    le 17/10/2016 à 14h22

  • mram

    mram Administrateur

    Bonjour, ne tenez pas compte de l'erreur, il y a un bug. Si vous arrivez à afficher le résultat demandé alors votre code est bon.

    le 21/11/2016 à 13h20

  • mram

    mram Administrateur

    Oui, toujours un souci dans le correction. Mais votre code est bon.

    le 21/03/2017 à 17h52

  • mram

    mram Administrateur

    Votre code est bon, comme j'ai dit plus haut l'exercice va être revu / refait. Ne tenez pas compte de l'erreur dans ce cas précis.

    le 18/10/2016 à 09h45

  • ctognol

    ctognol

    Bonjour, Mon code function hello(prenom,nom) { alert("Bonjour "+prenom+" "+nom); } hello("charles","tognol"); me semble correct pourtant message d'erreur concat erreur ?

    le 04/10/2016 à 15h07

  • willy.julan

    willy.julan

    bonjour j'ai ce message : Avez-vous correctement concaténé les 2 arguments dans alert() ? alors quand exécutant le script j'ai bien se qui est demandée !

    le 27/07/2016 à 14h50

  • s.gaudefroy

    s.gaudefroy

    Bonjour, le code ci-joint est bon mais le correcteur n'en veut pas ! Ou est le problème car j'obtiens le message d'erreur " Avez-vous correctement concaténé les 2 arguments dans alert() ? " function hello(prenom,nom) { alert("Bonjour "+prenom+" "+nom); } hello("stephane","famille");

    le 15/09/2016 à 11h58

  • mram

    mram Administrateur

    Votre code est bon. Normalement ça devrait passer, je vais regarder ça ...

    le 01/08/2016 à 12h05

  • mram

    mram Administrateur

    Votre code est ok, n'hésitez pas à passer à la suite, cet exercice sera mis à jour.

    le 05/10/2016 à 21h29

  • jovidal

    jovidal

    Apres 9 mois le code n'a pas été corrigé (?!?) ou j'ai fais une erreur ?

    le 03/06/2017 à 14h09

  • doucette.manon

    doucette.manon

    "prenom is not defined", mon code est-il bon ?

    le 10/09/2018 à 14h47

  • mram

    mram Administrateur

    Non, il y a une erreur entre la ligne 1 et la ligne 3 pour la variable concernée.

    le 15/09/2018 à 07h18

  • nadaljeanyves-70

    nadaljeanyves-70

    Bonjour Meriam, quand je ne fait pas l'appel à la fonction en enlevant "alert", j'ai un autre message d'erreur me demandant de mettre "alert". Avec ce code si, j'ai ce message d'erreur: Votre alert ne renvoie pas le bon message. Bonne journée, merci.

    le 22/06/2019 à 13h58

  • meriam

    meriam Administrateur

    Bonjour, votre code est correct, il suffit de supprimer la ligne 4 (appel à la fonction hello).

    le 24/06/2019 à 09h47

  • kriss.clotilde

    kriss.clotilde

    Bonjour, j'ai testé mon code mais cela ne fonctionne pas. Pouvez-vous m'aider à comprendre mon erreur svp ?

    le 22/09/2017 à 10h36

  • mram

    mram Administrateur

    Bonjour, votre code est correct. Ici la correction a du mal avec la concaténation.

    le 25/09/2017 à 16h54

  • triplaxs

    triplaxs

    C'est raté ce coup-ci, triplaxs ! Erreur(s) : que faire ?

    le 01/09/2017 à 23h21

  • mram

    mram Administrateur

    Bonjour, le nom de la fonction c'est hello et pas helo .

    le 06/09/2017 à 10h27

  • vahan.barsamian

    vahan.barsamian

    Mon code fonctionne... mais pas la correction...

    le 02/09/2017 à 14h05

  • mram

    mram Administrateur

    Bonjour, oui ici la correction bug. Votre code est correct.

    le 06/09/2017 à 10h42

  • nkeshimanabrice-37

    nkeshimanabrice-37

    pouvez-vous corriger mon code....

    le 02/01/2019 à 15h18

  • meriam

    meriam Administrateur

    Ne faites pas l'appel de la fonction. Il vous manque aussi l'espace aprés bonjour supprimez les simple quotes ' ' de prenom et nom (se sont les arguments de la fonction et il faut laisser espace entre prenom et nom.

    le 02/01/2019 à 15h56

  • Seb

    Seb

    Bonsoir. Je n'arrive pas a trouver d'où provient mon erreur, pourtant il me semble avoir bien concaténer le tout.

    le 04/09/2017 à 23h27

  • mram

    mram Administrateur

    Bonjour, oui la correction bug avec la concaténation ici. Votre code est correct.

    le 06/09/2017 à 11h47

  • maxime.orengo

    maxime.orengo

    Help je comprend pas

    le 18/10/2017 à 14h38

  • mram

    mram Administrateur

    Bonjour, votre code est correct. Cela vient de la correction automatique.

    le 19/10/2017 à 01h21

  • kazerlelutin

    kazerlelutin

    L'exercice n'est pas corrigé ? j'ai toujours une erreur me disant qu'alert ne renvoi pas le bon message : alert('Bonjour '+prenom+' '+nom)

    le 07/02/2019 à 10h53

  • meriam

    meriam Administrateur

    L'exercice fonctionne correctement, ne faites pas l'appel à la fonction, il suffit de supprimer la ligne 5.

    le 09/02/2019 à 18h44

  • alexismoquet

    alexismoquet

    bjr, mon code est-il ok ?

    le 06/10/2017 à 08h19

  • mram

    mram Administrateur

    Bonjour, oui il est correct :)

    le 09/10/2017 à 00h35

  • bernardraphael13

    bernardraphael13

    bonjour, j'aimerai résoudre cet exercice function hello (prenom,nom) { alert("Bonjour "+ prenom+nom); } hello(prenom,nom); pouvez vous me donner une piste merci d'avance.

    le 30/06/2017 à 14h32

  • mram

    mram Administrateur

    Bonjour, les lignes 5 et 6 sont inutiles, et dernière ligne il faut mettre des chaines de caractères, ex; "Jean" "Dupont".

    le 07/07/2017 à 10h51

  • bernardraphael13

    bernardraphael13

    bonjour, j'ai modifié le code , et cette fois l'erreur est la concaténation, le test donne le résultat convenu pouvez vous m'aider ?

    le 02/07/2017 à 09h27

  • mram

    mram Administrateur

    Je pense qu'il y a un souci au niveau de l'auto-correction , mais votre code ici n'est pas correct. Comme j'ai dit les lignes 5 et 6 sont inutiles et dernière ligne il faut mettre du vrai texte, avec les guillemets en paramètres de la fonction.

    le 07/07/2017 à 11h17

  • belespoir38

    belespoir38

    function hello(prenom,nom){ alert("Bonjour"+prenom+nom); } hello(prenom,nom); Pouvez-vous validé ce code, svp

    le 13/01/2018 à 23h06

  • mram

    mram Administrateur

    Bonjour, à la dernière ligne il faut mettre en paramètres de la fonction des noms, prénoms sous forme de chaîne de caractères.

    le 17/01/2018 à 19h03

  • jwagret

    jwagret

    Bonjour, ça me met une erreur "avez-vous bien concaténé avec alert()" Je vois pas pourquoi il ne passe pas...

    le 25/08/2017 à 22h28

  • mram

    mram Administrateur

    Bonjour, votre code est correct, n'en tenez pas compte. Par contre ligne 4 vous pouvez mettre de vrais prénom et nom et pas juste répéter le nom des variables.

    le 30/08/2017 à 13h14

  • belespoir38

    belespoir38

    Mon code est-il correcte svp ? function hello(prenom,nom){ alert("Bonjour"+prenom+nom); } hello(prenom1,nom1);

    le 14/01/2018 à 10h10

  • mram

    mram Administrateur

    Il faut mettre des chaînes de caractères en paramètres au moment de l'appel à votre fonction.

    le 17/01/2018 à 19h04

  • Hervé

    Hervé

    Bonjour, je ne comprend pas ce qui ne va pas avec mon code ! Pourriez-vous m'aider ? Merci d'avance

    le 26/08/2017 à 17h16

  • mram

    mram Administrateur

    Bonjour, votre code est correct, ne tenez pas compte de l'erreur ici.

    le 30/08/2017 à 13h48

  • farjallah.refka-37

    farjallah.refka-37

    Bonjour, mon Erreur(s) : Votre premier élément dans l'alert doit être là chaine "Bonjour " (<- notez l'espace à la fin)

    le 13/04/2019 à 13h28

  • meriam

    meriam Administrateur

    Votre troisième élément dans l'alert doit être la chaine " " (<- notez l'espace). Ne faites pas l'appel à la fonction.

    le 15/04/2019 à 11h04

  • David.b-22

    David.b-22

    Bonjour, mon code est-il correct?

    le 27/12/2018 à 11h28

  • meriam

    meriam Administrateur

    Bonjour, faut pas appeler la fonction.

    le 27/12/2018 à 13h33

  • triplaxs

    triplaxs

    function hello(prenon,nom){ alert("Bonjour" + prenom + nom); } hello("prenom","nom"); que faire

    le 09/09/2017 à 21h49

  • mram

    mram Administrateur

    Bonjour, votre code est correct. Ici la correction a du mal avec la concaténation.

    le 12/09/2017 à 17h01

  • philgd28

    philgd28

    Bonjour je ne pense pas avoir fait d'erreur, mais ça me met une erreur "avez-vous bien concaténé avec alert() ... Une idée peut-être, merci

    le 08/08/2017 à 11h44

  • mram

    mram Administrateur

    Bonjour, en effet pas d'erreur de votre part. La correction ne fonctionne pas bien ici.

    le 09/08/2017 à 11h31

  • danderhy3

    danderhy3

    function hello (prenom, nom) { alert("Bonjour" + prenom + nom); } hello("dan","derhy"); c est quoi le pb?

    le 14/07/2017 à 17h21

  • mram

    mram Administrateur

    Bonjour, c'est la correction qui bug. Votre code est correct.

    le 16/07/2017 à 11h07

  • slaouitaibi

    slaouitaibi

    Bonjour, mon code fonctionne normalement, mais sa m'affiche l'erreur suivante:

    le 12/09/2017 à 12h08

  • mram

    mram Administrateur

    Bonjour, votre code est correct, ne tenez pas compte de l'erreur ici. Par contre à la dernière ligne vous pouvez mettre ce que vous voulez comme nom et prenom ...

    le 12/09/2017 à 17h35

  • Bérénice

    Bérénice

    Pouvez-vous revoir la correction afin que l'on puisse valider l'exercice svp ?

    le 21/09/2017 à 11h11

  • mram

    mram Administrateur

    Bonjour, oui c'est prévu mais il y a d'autres exercices sur la liste, notamment celui sur les fonctions et l'utilisation de .pop() qui est prévu les prochains jours.

    le 22/09/2017 à 18h02

  • mram

    mram Administrateur

    Votre code est bon, mais vous pouvez mettre autre chose que "prenom" et "nom", c'est l'intérêt d'une fonction.

    le 22/09/2017 à 18h04

  • CC.013

    CC.013

    effectivement on relisant l'énoncée ... Merci eriam

    le 01/04/2019 à 18h16

  • Babeloued

    Babeloued

    Merci Mériam

    le 01/12/2018 à 06h07

index.html
script.js
<!DOCTYPE HTML> <html> <head> <title>Fonction et arguments</title> <script src="script.js"></script> </head> <body> </body> </html>