11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'essaye de découvir depuis peu les fonctions PHP et Javascript mais j'ai un petit problème (qui doit certainement être évident pour vous !) avec les arguments !

J'ai cherché sur le net et dans des bouquins pour trouver ce genre de trucs :
a écrit :

Les arguments sont transmis à la fonction par l'intermédiaire d'une affectation de valeur entre les arguments lors de l'appel de la fonction et les paramètres de la fonction elle-même.

function nom_fonction (rep_param1, rep_param2,...)
{ ... };
nom_fonction (arg1, arg2,...);
/*L'appel provoque les affectations rep_arg1=arg1 et rep_arg2=arg2*/

function carre(x){return x*x;};
var aire=carre(100);
/*L'appel provoque l'affectation x = 100*/

Et franchement, j'ai beaucoup de mal à saisir la subtilité des choses !

Je serais bien heureux si quelqu'un pouvait me renvoyer vers un lien clair ou s'il pouvait passer un peu de temps à m'expliquer les tenants et aboutissants des arguments dans les fonctions !

D'avance merci
Modifié par sebe (10 Dec 2006 - 14:56)
Salut.

Le site du zéro ou PHP Scripts sont biens.

Un argument (c'est un paramètre de ta fonction) c'est une technique pour exécuter une fonction en lui passant des parametres.
Cette mini-fonction affichera le contenu de la variable $texte :

function ecrire ($texte){
  echo $texte;
}

( la commande echo sert à écrire du texte)

Une fois que tu as défini ta fonction, il faut l'appeler.
Voilà comment appeler et exécuter ta fonction :

  ecrire ("bonjour");
  ecrire ("ça va");
  ecrire ("au revoir");

Ici, on l'execute trois fois de suite avec une valeur à chaque fois différente pour $texte.
Ce programme affichera "bonjour", puis "ça va", puis "au revoir".


En plus d'envoyer des parametres, tu peux te servir de ta fonction pour récupérer une valeur grâce à l'instruction "return":
Exemple d'une fonction avec return :

function ecrire ($texte){
  if $texte ne contient pas de gros mots{
    echo $texte;
    return "texte validé";
  }
  else {
    return "Nous ne diffusons pas de tels messages.";
  }
}

$resultat=ecrire("le texte à filtrer");
echo $resultat;


Si le texte comptient des jurons, seule la ligne "nous ne diffusons pas..." sera affichée, et dans le cas contraire, elle sera affichée, suivie de "texte validé".

Un autre exemple avec return:

function compter ($prix){
  if ($chiffre!=$lejusteprix) {
  return false;
}
else {return true;}


if (compter($prix)==true){echo "vous avez trouvé le juste prix";}

Modifié par Ralfman68 (10 Dec 2006 - 15:46)
..bonjour à tous !

J'aime bien l'approche qu'Anne Tassot en fait dans son bouquin sur le Java:

a écrit :

Certains algoritmes ( ps de moi: on peut parler ici de fonctions ou suites d'instructions )peuvent etre appliqués à des problèmes voisins en modifiant simplement les donnéees pour lesquels ils ont été construits .
En faisant varier certaines valeurs , le programme nous fournit un résultat
différent du précédent.
Ces valeurs , caractérsitiques du problème à traiter, sont appelées paramètres du programme


Les fonctions définissent une ou plusieurs actions à accomplir ( une marche à suivre) .
Lorsque cette action est répétitive (une addition de nombre) les instructions
ne changent pas ( prendre le premier nombre et l'additionner au second) , mais les valeurs de ces nombres (paramètres) changent le résultat.


function addition (nombre1, nombre2) {
   // les instructions de la fonction .. 
   // additionner les nombres et les mettre dans une variable
   var resultat = nombre1 + nombre2;
  // renvoyer le resultat lors de l'appel de la fonction
  return resultat;
}

   


cette fonction est la suite d'instruction (toujours les memes ) pour faire une addition.
La valeur des paramètres passés a cette fonction vont changer le résultat.
Note bien que la fonction en elle meme ne fait rien ... ce ne sont que des instructions .

Pour utiliser la fonction ( faire une addition) en va l'appeller et donner des valeurs aux paramètres .

// appel de la fonction pour additionner 5 et 10
// genre : toi la fonction qui sait faire une addition .... aditionne moi 5 et 10
// et met le résultat dans une variable 'total'
var total = addition(5,10);
// merci ..

la fonction sait ce qu'elle a à faire et on a donner des valeurs aux paramètres ( ou arguments peu importe) pour le faire..

++
ps: j'ai mis un moment à 'comprendre' cela aussi, et ce qui est important de retenir je crois c'est que la fonction ne fait rien tant qu'on ne lui a pas donner de valeurs aux paramètres
Modifié par kzone (10 Dec 2006 - 17:26)